大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺
[INFO] BUILD FAILURE
[ERROR] Failed to execute
[ERROR] For more information about the errors and possible solutions, please read the following articles:
1、问题情形
项目代码是从SVN上刚下载的。
同事在启动项目时,程序卡在下图这个地方不动了(请忽略图片上的时间):
可以看出,项目已经在启动了,但是中途遇到了不知名的情况,卡着不动了,等了好长时间也不往下走。
但是我们其他同事都能成功启动,同样的代码,别人起得来,就他起不来,肯定有原因。
2、查找原因
同事用run configurations启动,命令是clean tomcat7:run,模式是Offline
对于Offline(离线模式),我的理解就是脱机,不受约束,即不联网进行jar包校验,只要有这个jar包就行。不使用Offline就意味着需要联网进行一系列的校验。就好比开着,Offline就是只要有车我就开,就算是开半路车要爆炸那我也开;而联网的时候呢,就是我先把这辆车检查一下,一旦发现问题,那我就不开了。
我把Offline(离线模式)取消勾选,如下图:
奇迹出现了,系统打印了错误(请忽略图片上的时间):
三行关键信息,可以推断是Maven引入依赖是出现错误:
[INFO] BUILD FAILURE
[ERROR] Failed to execute
[ERROR] For more information about the errors and possible solutions, please read the following articles:
很明显嘛,那行蓝色的提示信息就明确表示了错误原因是:解决依赖关系出现错误。
当然,有时候提示的不是这些,而是其他的。但是根据红框圈中的那三行关键信息,基本可以锁定是这类问题。
3、解决问题
问题原因已经清楚了,那怎么解决呢?
来看[INFO] BUILD FAILURE这行上面的那些信息,
Maven需要下载一些文件,但是试过所有下载连接后也没能下载成功(通常是需要翻墙,也可能是连接错误),那么我们来手动下载。
我没这么干,我直接从其他能正常启动这个项目的同事那边拷了整个的org.eclipse包,替换掉这位同事原来的包。然后项目成功启动。
手动下载的话,我一般都是去https://repo.maven.apache.org/maven2/下载。
下载的时候最好是将自己本地的删除掉,然后将中央仓库里这个包下的jar、pom、xml什么的全下下来,然后复制到本地仓库。
4、还有之前遇到的一些类似的问题
日志显示三行关键的地方:
[INFO] BUILD FAILURE
[ERROR] Failed to execute
[ERROR] For more information about the errors and possible solutions, please read the following articles:
来看[INFO] BUILD FAILURE这一行上边的,
可以猜测下载这个pom文件时出了问题,我不研究到底出了什么问题(有时候是因为需要翻墙),直接从中央仓库重新下载:
https://repo.maven.apache.org/maven2/org/apache/httpcomponents/project/5/
我把目录下的文件全下载下来,然后替换到本地仓库:
重新启动项目,OK,启动成功
5、引入自己的jar包出现问题。
工作中,经常会遇到一些自己公司封装的jar包,由于是自己封装的,所以大多都是在本地仓库,各同事间相互拷贝。
但是,在Maven项目中,是通过pom文件找到对应jar包的。所以,如果本地没有pom文件,那么以在线模式启动maven的话,一定会报错。
解决办法就是:手动写一个pom文件
比如我们公司自己封装了一个关于json的jar包,名为:json-1.0.jar,在maven仓库位置:本地maven仓库根路径/org/json/json/1.0/ json-1.0.jar
需在jar包同路径下写下同名的pom文件:json-1.0.pom:
pom文件内容如下:
也可以使用mvn命令自动生成pom文件:
mvn install:install-file -DgroupId=org.json -DartifactId=json -Dversion=1.0 -Dpackaging=jar -Dfile=D:/json-1.0.jar
在命令行执行以下就行
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/192043.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...