我用Eclipse开发Maven项目,本来好好的,但是后来莫名其妙的其中pom.xml文件报错,后来执行install命令时又编译不通过报错。我痛苦地摸索了一整天,最后才把问题解决了。虽然问题解决了,但我也不知道问题症结所在,不知道所以然,不知道我到底最后是通过哪一步有效手段搞定了问题的。下面简单叙述一下我所采用的方法。很混乱,无理由。反正就是莫名其妙地坏了,后来胡乱捣鼓,又莫名其妙地好了。
首先是pom.xml文件中第一行报错。
这一行被标红了,出现了莫名其妙的 Multiple annotations found at this line:Missing artifact org.mortbay.jetty:jet等一大长串错误。(和这个错误一样:http://www.myexception.cn/web/1501238.html ,可以先尝试这里的解决方法。)
后面pom.xml的问题解决了,但是编译(执行命令:mvn install)的时候,又报错
-
Failed to
execute goal
on
project ui:
-
Could
not resolve dependencies
for
project <<
package>>:ui:war:
1.0:
Failed
to
collect dependencies
for [javax.servlet:servlet-api:jar:
2.5 (provided),
-
org.springframework:spring-core:jar:
3.0
.5.RELEASE (compile),
-
org.springframework:spring-web:jar:
3.0
.5.RELEASE (compile),
-
cglib:cglib:jar:
2.2 (compile), org.springframework:spring-aop:jar:
3.0
.5.RELEASE (compile),
-
org.springframework:spring-webmvc:jar:
3.0
.5.RELEASE (compile), org.springframework:spring-
context:jar:
3.0
.5.RELEASE (compile),
-
org.freemarker:freemarker:jar:
2.3
.18 (compile), gr.imu.ntua.tweetinspire:services:jar:
1.0 (compile),
-
org.cloudfoundry.samples:tomcat7-
standalone:tar.gz:
7.0
.29 (compile), org.slf4j:slf4j-api:jar:
1.6
.1 (compile),
-
org.slf4j:slf4j-log4j12:jar:
1.6
.1 (compile), org.slf4j:jcl-
over-slf4j:jar:
1.6
.1 (compile),
-
commons-
logging:commons-
logging:jar:
1.1
.1 (compile), junit:junit:jar:
4.8
.1 (
test),
-
org.springframework:spring-
test:jar:
3.0
.5.RELEASE (
test), org.dbunit:dbunit:jar:
2.4
.8 (
test)]:
Failed
to
read artifact
descriptor
for org.cloudfoundry.samples:tomcat7-
standalone:tar.gz:
7.0
.29: Could
not transfer artifact org.cloudfoundry.samples:tomcat7-
standalone:pom:
7.0
.29
from/
to jets3t (
http://www.jets3t.org/maven2):
Access denied
to:
http://www.jets3t.org/maven2/org/cloudfoundry/samples/tomcat7-
standalone/
7.0
.29/tomcat7-
standalone
-7.0
.29.pom, ReasonPhrase:Forbidden
解决方法一:
后面就将pom.xml中的一段依赖jdk的代码注释掉,
D:\java\jdk\lib\tools.jar
然后清理Eclipse项目(点击Eclipse编辑器中的Project, 然后点击clean),再将上面这段代码的注释取消掉。
解决方法二:
如果以上方法还没有解决问题,还可以尝试关闭maven项目在项目启动时自动下载更新仓库选项。操作方法如下:
点击Eclipse中的window菜单,选择Preferences,点击左侧的Maven ,然后去掉Download repository index updates on startup选项前面的对勾,然后清理Eclipse项目(Project-->clean)。
解决方法三:
如果上面的解决方法还没有解决问题,可以查看一下 C:\Users\Y480\.m2 (Y480是我的计算机用户名,具体目录看你自己的项目目录)目录下是否有一个settring.xml文件。要是有的话,把它删掉。(没问题的。你要是担心,就把它拷到其他地方备份吧。)然后清理Eclipse项目(Project-->clean)。
我通过上面的方法反复捣鼓了半天,最后终于解决问题了,调环境真是太累了。上面的表述比较混乱,因为是几周前的事了,现在才写出来。想起当初找不到解决方法时孤立无助的痛苦,觉得还是有必要写一点东西,也许会对某些人有点用。