好的我正在将我的开发环境从笔记本电脑移到我的桌面。
我在两台机器上都有完全相同的项目但是当我尝试通过桌面上的eclipse运行maven的更新依赖项时,只是抱怨每个依赖项都“缺少人工制品”?
我已经检查了桌面上的本地仓库,果然,没有罐子!?所有的pom都在那里,但没有罐子!
我回到了笔记本电脑,从那台机器上的本地仓库中的罐子里删了,并再次调用了更新依赖项并且爆炸,罐子下载得很好,但桌面似乎无法下载任何罐子?< / p>
这两台机器都在同一个网络/路由器上,所以它不能是硬件防火墙/代理,但是有一些eclipse设置或windows防火墙设置我完全忘记了吗?
最后,我一直在删除桌面上的repo并在项目中使用mvn -up clean install,我注意到它下载了PLUGIN jar就好了,但是继续只为任何和所有依赖项下载poms! ?
我的settings.xml如下(建议的回购的mashup类型);
<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.0http://maven.apache.org/xsd/settings-1.0.0.xsd">
<pluginGroups></pluginGroups>
<proxies></proxies>
<servers></servers>
<mirrors></mirrors>
<profiles>
<profile>
<id>standard-extra-repos</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<repositories>
<repository>
<id>net.java.download</id>
<url>http://download.java.net/maven/2</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>org.apache</id>
<url>http://maven.apache.org/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>org.codehaus.mojo</id>
<url>http://mojo.codehaus.org/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>com.jboss.repository</id>
<url>http://repository.jboss.com/maven2</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>com.springsource.repository.bundles.release
</id>
<name>SpringSource Enterprise Bundle Repository -
SpringSource Bundle Releases</name>
<url>http://repository.springsource.com/maven/bundles/release
</url>
<releases>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
</repository>
<repository>
<id>com.springsource.repository.bundles.external
</id>
<name>SpringSource Enterprise Bundle Repository -
External Bundle Releases</name>
<url>http://repository.springsource.com/maven/bundles/external
</url>
<releases>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
</repository>
<repository>
<id>com.springsource.repository.libraries.release
</id>
<name>SpringSource Enterprise Bundle Repository -
SpringSource Library Releases</name>
<url>http://repository.springsource.com/maven/libraries/release
</url>
<releases>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
</repository>
<repository>
<id>com.springsource.repository.libraries.external
</id>
<name>SpringSource Enterprise Bundle Repository -
External Library Releases</name>
<url>http://repository.springsource.com/maven/libraries/external
</url>
<releases>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
</repository>
</repositories>
</profile>
答案 0 :(得分:5)
嗯不确定这是不是没脑子但是我在台式机上使用maven 3.0.1,我再次下载2.2.1以匹配笔记本电脑和BANG,依赖jars下载就好了吧!对于“向后兼容”的maven 3 !!!!
答案 1 :(得分:2)
查看下载的POM的内容。有时Maven尝试下载它们,甚至在文件系统上创建它们,但是如果你查看内容你会发现一些服务器错误代码,也许这可以帮助..
答案 2 :(得分:1)
如果不是代理问题,那么可能是由于您的网络问题,这意味着您的网络无法连接到您的settings.xml中指定的存储库中心。
尝试更改存储库中心:
在maven_home / conf / setting.xml中,找到镜像标记,并用新镜像替换旧/空镜像,然后重新启动eclipse。
以下是适用于我的镜像:
<mirror>
<id>ibiblio.org</id>
<name>ibiblio Mirror of http://repo1.maven.org/maven2/</name>
<url>http://mirrors.ibiblio.org/pub/mirrors/maven2</url>
<mirrorOf>central</mirrorOf>
<!-- United States, North Carolina -->
</mirror>
<mirror>
<id>jboss-public-repository-group</id>
<mirrorOf>central</mirrorOf>
<name>JBoss Public Repository Group</name>
<url>http://repository.jboss.org/nexus/content/groups/public</url>
</mirror>
答案 3 :(得分:0)
有同样的问题。在镜像部分添加一个重复的服务器解决了它。
答案 4 :(得分:0)
如果您希望项目可以在任何计算机上移植,则不能依赖本地settings.xml。我经常看到的实际上是在某个/ target目录中构建一个本地repo,并使用它在你在构建时生成的maven环境中运行目标。惯例似乎是src / main / it / settings.xml和src / main / it / local-repo。
我确定某个地方有一个maven插件会为你做这件事。