Maven错误“未能传输…”
我正在尝试使用Maven(m2eclipse)来设置一个项目,但是我在Eclipse中出现这个错误:
说明资源path位置types无法计算构build计划:无法传输org.apache.maven.plugins:maven-compiler-plugin:pom:2.0.2从http://repo1.maven.org/maven2被caching在本地在中央更新间隔结束或更新被强制之前,不会重新parsing分辨率。 原始错误:无法传输工件org.apache.maven.plugins:maven-compiler-plugin:pom:2.0.2 from / to central( http://repo1.maven.org/maven2 ):60000后未收到响应ExampleProject未知的Maven问题
有任何想法吗? 如果你能告诉我如何检查一切是否configuration好,这将是有帮助的…
删除所有失败的下载:
find ~/.m2 -name "*.lastUpdated" -exec grep -q "Could not transfer" {} \; -print -exec rm {} \;
对于Windows:
cd %userprofile%\.m2\repository for /r %i in (*.lastUpdated) do del %i
然后在eclipse中右键单击你的项目并selectMaven – >“Update Project …”,确保在所得到的对话框中勾选“Update Dependencies”,然后点击OK。
这在Windows中也适用于我。
- find{user} /。m2 / repository(在这里使用Juno / Win7)
- 在窗口右上方的search字段中,input“.lastupdated”。 Windows将查看目录中的这些文件的所有子文件夹。 (我没有看caching。)
- 通过右键单击>删除(我保留所有lastupdated.properties)来删除它们。
- 然后返回到Eclipse,右键单击该项目并selectMaven> Update Project。 我select了“强制更新快照/版本”。 点击确定,依赖关系最终正确parsing。
尝试执行
mvn -U clean
或者运行> Maven Clean和Maven>从eclipse中的项目上下文菜单中更新快照
感谢您的答复,但经过一些更多的search,我能够解决这个问题。 事实certificate,我不得不删除其中一个“* .lastUpdated”,这是防止我的一个插件(Maven的Surefire插件)更新。 我手动做了这个,因为maven clean并不是很明显。
问题是插件的“* .lastUpdated”文件阻塞了maven检查更新,并且不允许下载一个必要的jar。
在Eclipse中:右键单击项目 – > Maven->更新项目 – >选中checkbox“强制更新快照/发布”。 点击OK。
如果您位于代理之后,则必须更新settings.xml文件(位于MAVEN_HOME的conf文件夹下,该文件本身包含有关代理设置的信息),另外还需要更新Eclipsenetworking设置(Window->首选项…->键入networking连接)。
尝试使用-X或–debug以获取debugging输出,这可以提供有关该问题的其他信息。
Iam在防火墙后面发生了Iam事件。 在Eclipse IDE中运行时,有时不会下载依赖关系。 确保你使用mvn clean install -U
来解决问题。 之后你会看到依赖关系下载。
这在Windows中适用于我:
- find
{user}/.m2/repository
- 在窗口右上方的search字段中,input“
.lastupdated
”。 Windows将查看目录中的这些文件的所有子文件夹。 - 删除所有
.lastupdated
文件。 - 回到Eclipse中,右键单击项目并select
Maven > Update Project
。 - select“
Force Update of Snapshots/Releases
”。 - 点击确定,依赖关系将最终正确parsing。
在Eclipse3.6中,我有类似的问题m2eclipse。
无法计算构build计划:未能转移org.apache.maven.plugins:maven-resources-plugin:jar:2.4.3从http://repo1.maven.org/maven2caching在本地存储库中,parsing不会重新尝试,直到中央的更新间隔已过或更新被强制。; 原始错误:无法传输工件org.apache.maven.plugins:maven-resources-plugin:jar:2.4.3从中央(http://repo1.maven.org/maven2):ConnectException项目1未知的Maven问题;
从我的本地reository(如Deepak喜悦build议)删除所有maven * .lastUpdated文件解决了这个问题。
在我的情况。 问题是一样的原因。 我看到的问题是代理和防火墙。
这里我的解决scheme
更多的方式:
1.为Maven和Eclipse安装代理
2.转到find{user} /。m2 / repository并删除所有* .lastupdated文件
3.返回到Eclipse,右键单击项目并selectMaven> Update Project。 >select“强制更新快照/版本”。
如果该项目仍然存在错误。 例如:这是我的问题毕竟以上的一步
Failure to transfer org.apache.maven:maven-archiver:pom:2.5 from https://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 org.apache.maven:maven-archiver:pom:2.5 from/to central (https://repo.maven.apache.org/maven2): Connect timed out
我使用这个解决scheme对我有用:
1.在https://mvnrepository.com/中查找存储库;
2.将依赖项复制到项目的我的* .poml
例
<dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-archiver</artifactId> <version>2.5</version> </dependency>
3.build立项目。 缺less依赖关系将被下载到本地存储库。
4.返回到Eclipse,右键单击项目并selectMaven> Update Project。 >select“强制更新快照/版本”。
= >>错误已解决
5.完成并解决后,在步骤2中删除依赖项。 完成
这发生在我身上,你可能有两个这样的解决scheme
-
如果您的项目包含一些外部或项目特定的依赖项 ,那么您必须手动将其添加到位于C:\ Users \ Mohit.Singh.m2 \ repository文件夹中的M2 repo文件夹,然后您必须运行mvn eclipse:日食 ,然后从项目文件夹干净的安装
-
如果你没有任何wxternal或项目特定的依赖项,那么你可以将项目导入eclipse作为现有的maven项目,然后右键单击项目 – >转到maven – >点击更新项目将出现一个窗口检查力快照下载选项并点击确定
我的工作空间中只有几个项目有类似的问题。 其他几乎完全相同的项目没有任何错误。 没有列出的其他答案解决了我的问题。 我终于偶然发现了为每个项目删除/重新应用Maven的性质,错误消失了:
对于每个具有“分辨率将不会被重新尝试…”错误的项目:
- 在Eclipse中右键单击项目并selectMaven – > Disable Maven Nature
- 在Eclipse中右键单击该项目,然后selectconfiguration – > 转换为Maven项目
只要删除 maven local repository
的原型。 如上所述,发生在原型下载失败的情况下。
在eclipse中给出正确的maven setting.xmlpath。
- Windows – >首选项 – > Maven – >用户设置
在用户设置文本框中input正确的setting.xmlpath
settings.xml的代理? 在eclipse中有Maven全局\本地configuration文件,添加settings.xml
对我来说,我只是在POM.xml文件中添加了下面的xml代码。 然后我dit **右键单击项目 – > Maven – >更新项目,我检查了强制更新的快照/发布**和每一件事情
<dependencies> <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> <!-- https://mvnrepository.com/artifact/javax.servlet.jsp/jsp-api --> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.1</version> </dependency> <!-- https://mvnrepository.com/artifact/jstl/jstl --> <dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.5.1</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build>
请确保.m2文件夹中的settings.XML文件是有效的。然后在cmd中使用下面的命令清理存储库
cd %userprofile%\.m2\repository for /r %i in (*.lastUpdated) do del %i