无法传输工件org.apache.maven.plugins:maven-surefire-plugin:pom:2.7.1 from / to central(http://repo1.maven.org/maven2)

我在SpringSource Tool Suite中创build了一个新的Maven项目。 我在一个新的Maven项目中得到这个错误。

未能将http://repo1.maven.org/maven2中的org.apache.maven.plugins:maven-surefire-plugin:pom:2.7.1caching在本地存储库中,直到更新间隔才会重新parsing中央已经过去或更新被迫。 原始错误:无法传输工件org.apache.maven.plugins:maven-surefire-plugin:pom:2.7.1 from / to central( http://repo1.maven.org/maven2 ):连接超时

pom.xml中:

<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"> <modelVersion>4.0.0</modelVersion> <groupId>com.test.app</groupId> <artifactId>TestApp</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>TestApp</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> </project> 

将Settings.xml

 <?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <pluginGroups> </pluginGroups> <proxies> <proxy> <id>optional</id> <active>true</active> <protocol>http</protocol> <username>user</username> <password>pass</password> <host>ip</host> <port>80</port> <nonProxyHosts>local.net|some.host.com</nonProxyHosts> </proxy> </proxies> <servers> </servers> <mirrors> <mirror> <id>mirrorId</id> <mirrorOf>repositoryId</mirrorOf> <name>Human Readable Name for this Mirror.</name> <url>http://repo1.maven.org/maven2/</url> </mirror> </mirrors> <profiles> </profiles> </settings> 

请不要我能够biuld它。错误显示在IDE内的pom.xml。任何解决scheme?

通过使用以下settings.xml简化的东西:

 <?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <proxies> <proxy> <id>myproxy</id> <active>true</active> <protocol>http</protocol> <username>user</username> <!-- Put your username here --> <password>pass</password> <!-- Put your password here --> <host>123.45.6.78</host> <!-- Put the IP address of your proxy server here --> <port>80</port> <!-- Put your proxy server's port number here --> <nonProxyHosts>local.net|some.host.com</nonProxyHosts> <!-- Do not use this setting unless you know what you're doing. --> </proxy> </proxies> </settings> 

在Linux / Unix下,把它放在~/.m2/settings.xml 。 在Windows下,将它放在c:\documents and settings\youruser\.m2\settings.xmlc:\users\youruser\.m2\settings.xml

你不需要<mirrors/><profiles/><settings/>部分,除非你真的知道他们是干什么的。

当我更新maven并在Eclipse中检查选项“强制更新快照/释放”时,我已经解决了这个问题。 这清除了所有的错误。 所以右键单击项目 – > Maven – >更新项目,然后检查上面的选项 – >确定。 希望这可以帮助你。

看来你的maven无法连接到maven仓库http://repo1.maven.org/maven2

如果您使用的是代理服务器,并且可以通过浏览器访问该链接,则需要将相同的设置应用于SpringSource Tool Suite(如果在套件中运行)或Maven。

对于Maven代理设置,请在.m2目录中创build一个settings.xml,其中包含以下详细信息

 <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <proxies> <proxy> <active>true</active> <protocol>http</protocol> <host>PROXY</host> <port>3120</port> <nonProxyHosts>maven</nonProxyHosts> </proxy> </proxies> </settings> 

如果您没有使用代理服务器,并且可以通过浏览器访问该链接,请删除上述所有代理设置。

对于第一个错误,您可以简单地清除本地存储库caching,以强制从主存储库下载,而不是检查本地存储库。

对于第二个错误,如果你在代理之后,你应该这样configuration它configuration一个代理,否则你现在有一个networking问题。

对我来说,解决scheme只是从~/.m2/repository/org/hsqldb/

删除hsqldb文件夹后,我已经build立了项目,一切都很好。

帮助我的是@carlspring的build议(创build一个settings.xml来configuration你的http代理):

 <?xml version="1.0" encoding="UTF-8"?> <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> <proxies> <proxy> <id>myproxy</id> <active>true</active> <protocol>http</protocol> <username>user</username> <!-- Put your username here --> <password>pass</password> <!-- Put your password here --> <host>123.45.6.78</host> <!-- Put the IP address of your proxy server here --> <port>80</port> <!-- Put your proxy server's port number here --> <nonProxyHosts>local.net|some.host.com</nonProxyHosts> <!-- Do not use this setting unless you know what you're doing. --> </proxy> </proxies> </settings> 

然后按照@Peter T的build议刷新eclipse项目maven:

在Eclipse中“强制更新快照/发布”。 这清除了所有的错误。 所以右键单击项目 – > Maven – >更新项目,然后检查上面的选项 – >确定。 希望这可以帮助你。

看来我有一个networking问题。 在你身边,或者在Maven身边,或者在中间的任何地方。 稍后再试。

如果错误是永久性的,请检查您的networking设置。 如果你在一个代理之后,你需要在你的〜/ .m2 / settings.xml中有以下内容:

 <proxies> <proxy> <id>optional</id> <active>true</active> <protocol>http</protocol> <username>proxyuser</username> <password>proxypass</password> <host>proxy.host.net</host> <port>80</port> <nonProxyHosts>local.net|some.host.com</nonProxyHosts> </proxy> </proxies> 

我强烈build议使用Maven Repository Manager,如Nexus。 它将帮助您通过Maven获得稳定和可重复的构build。 由于Repository Manager通常在您的LAN中,因此您不必configuration代理设置,但需要定义一些其他configuration:

http://www.sonatype.com/books/nexus-book/reference/maven-sect-single-group.html

http://maven.apache.org/repository-management.html

如果以上都没有工作然后尝试去这个问题和答案: Maven错误“无法传输…”

并删除您的.lastUpdated文件。

我第一次开始在我的机器上使用maven。 得到这个错误: Could not transfer artifact from/to central (https://repo.maven.apache.org/maven2) No such file or directory清理〜/ .m2 / repository目录。 不要再遇到这个问题

  1. 更新Maven项目并检查选项“强制更新快照/发布”,它将删除错误。
  2. 如果没有,Maven将清理并安装该项目。
  3. 仍然错误不删除,重复步骤1。

它为我工作:)

如果你在Windows操作系统,不需要任何代理,然后删除整个代理设置

 <proxies> <proxy> .................. </proxy> </proxies> 

并replace为

 <proxies/> 

然后做一个maven干净的构build

这个问题是一个networking问题。

  1. 转到本地存储库,findorg / apache / maven / plugins / maven-surefire-plugin目录。

  2. 删除它的相应版本。

  3. maven更新项目,然后再次下载。

如果您不在任何代理之后,仍然出现连接超时错误,请检查防火墙设置/防病毒软件。 有时防火墙可能会阻止任何工具(如Eclipse / STS等)的连接。

我们在公司层面设置代理。

在Internet Explorer中禁用代理之后,这个问题就解决了(看起来像在系统级别上被禁用了),所以其他浏览器也会select这个改变。

现在我可以从CMD提示符发出MVN命令,而我没有问题,例如

“正在下载: https : //repo.maven.apache.org/maven2/org/apache/maven/archetypes/maven-archetype-webapp/1.0/maven-archetype-webapp-1.0.pom ”

…这是造成“build设失败”

在我们的情况下,在IE中禁用代理需要每天完成,因为在每个系统启动它被设置