配置Maven的pom.xml时遇两个错误,求原因解析
Maven无法解析maven-compiler-plugin:3.8.7的问题解决
问题原因
- 网络故障:首次拉取插件时网络中断或不稳定,导致Maven将失败状态缓存到本地仓库
- 本地缓存限制:Maven默认会缓存依赖拉取的失败记录,在默认更新周期内不会主动重试
- 本地仓库目录损坏:对应插件版本的缓存文件损坏或不完整
解决步骤
强制更新依赖缓存
进入项目根目录,执行命令:mvn clean install -U-U参数会强制Maven忽略本地缓存的失败状态,重新从中央仓库拉取插件及依赖。手动清理本地缓存
找到本地Maven仓库中插件的缓存目录:- Linux/Mac:
~/.m2/repository/org/apache/maven/plugins/maven-compiler-plugin/3.8.7 - Windows:
C:\Users\<你的用户名>\.m2\repository\org\apache\maven\plugins\maven-compiler-plugin\3.8.7
删除该目录下所有文件(尤其是.lastUpdated结尾的缓存文件),然后重新执行mvn clean install。
- Linux/Mac:
检查网络与代理配置
- 确认能正常访问Maven中央仓库,可以用浏览器测试访问。
- 若使用公司内网,需在Maven的
settings.xml中配置代理,示例配置:<proxies> <proxy> <id>company-proxy</id> <active>true</active> <protocol>http</protocol> <host>你的代理地址</host> <port>代理端口</port> <username>代理账号(如有)</username> <password>代理密码(如有)</password> <nonProxyHosts>本地地址|*.公司域名</nonProxyHosts> </proxy> </proxies>
更换插件版本
如果3.8.7版本存在访问问题,可以在pom.xml中替换为稳定版本(如3.11.0):<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.11.0</version> <configuration> <source>1.8</source> <!-- 根据你的JDK版本调整 --> <target>1.8</target> </configuration> </plugin> </plugins> </build>
错误截图

内容的提问来源于stack exchange,提问作者Akash Sk
相关产品推荐
相关产品推荐

