您的位置:首页 > 编程语言 > Java开发

Eclipse 创建maven项目pom文件报错解决方案

2014-10-10 00:42 513 查看

软件版本:

Eclipse :



Maven :



m2e:



操作步骤 :

File -> New -> Other -> Maven -> Maven Project -> Next -> 勾选 Create a simple project -> Next -> 正常填入 -> Finish

结果就是pom文件会报错,报错位置在第一行,如下
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">[/code] 
提示一长串的错误

Failure to transfer XXXX:XXX:pom:XXX
from http://repo.maven.apache.org/maven2 was cached in the local 
 repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced. Original error: 
 Could not transfer artifact XXX:XXX:pom:XXX from/to central (http://repo.maven.apache.org/maven2): No 
 response received after 60000

大致中文含义为某某maven依赖无法从中央库下载(可能是pom文件,也可能是jar包)。

原因分析:

上网搜寻了许久,并没有很好的解决方案,大体上猜测原因如下:
  1. m2e版本问题
  2. eclipse的bug
  3. 网络问题,可能被墙或者不稳定
  4. 其他看都看不懂的原因(真的看不懂~~~)

解决方案:

   上述原因中,1、2、4本人真的无能为力,因此从3的角度考虑,我们知道maven在添加依赖的时候,先到本地库中找,没有才去远程库下,再没有就报错了,因此,我们可以用“欺骗”的方式,让maven使用我们准备的不是从远程库下载的东西。
    1. 如果pom报错是因为缺少某个pom文件,那么推荐去http://mvnrepository.com/或者http://search.maven.org/输入报错的artifactId,找应的pom文件内容,然后在本地maven库对应位置伪造maven要求的pom文件,复制相应内容即可。
    2. 如果是jar报错,依照上一步的操作即可,只是要下载对应版本的jar包。

一般来说上述方法就可以解决这一类问题,但是请做好心理准备,可能会很多,但是只要有点耐心,肯定可以,虽然大部分情况下这类问题根本不需要解决,但没办法,强迫症犯了。。。。。

附加:

  还遇到一个警告Build path specifies execution environment J2SE-1.5. There are no JREs installed in the workspace that are strictly compatible with this
environment. 
  而且你改掉jre版本后,maven update还是如此。
 本人解决办法,在pom中添加如下代码:
  
<build>
<finalName>XXX</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.X</source>
<target>1.X</target>
</configuration>
</plugin>
</plugins>
</build>


1.X 为你希望的版本。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Eclipse Maven m2e pom
相关文章推荐