使用Nexus Repository OSS 3创建Maven项目[离线]

时间:2016-10-11 20:59:29

标签: java eclipse maven nexus

我的问题是,在将我的Nexus存储库添加到.m2 settings.xml后,我无法创建新的Maven项目。

我已将Nexus Repositoy Manager OSS 3.0.2安装为我的本地Maven存储库。我有一台机器处于离线模式,无法连接到互联网。我能做的是将数据从在线机器转移到它想到的。因此,我可以在在线计算机上部署所有必需的库,稍后再切换/ data文件夹。

使用Eclipse创建新的Maven项目后出错:

  

无法计算构建计划:插件org.apache.maven.plugins:maven-> resources-plugin:2.6或其某个依赖项无法解析:>无法读取org.apache.maven的工件描述符.plugins:maven-> resources-plugin:jar:2.6

maven-resources-plugin-2.6.jar在我的Nexus Repository上部署/可用:Path org / apache / maven / plugins / maven-resources-plugin / 2.6 / maven-resources-plugin-2.6.jar

My Maven settings.xml(部分):

<mirrors>
<mirror>
  <!--This sends everything else to /public -->
  <id>nexus</id>
  <mirrorOf>*</mirrorOf>
  <url>http://localhost:8081/repository/maven-test/</url>
</mirror>
</mirrors>
...
<profile>
 <id>nexus</id>
 <repositories>
  <repository>
  <id>central</id>
  <url>http://central</url>
  <releases><enabled>true</enabled></releases>
  <snapshots><enabled>true</enabled></snapshots>
 </repository>
</repositories>
<pluginRepositories>
 <pluginRepository>
  <id>central</id>
  <url>http://central</url>
  <releases><enabled>true</enabled></releases>
  <snapshots><enabled>true</enabled></snapshots>
 </pluginRepository>
</pluginRepositories>
</profile>
...
<server>
 <id>nexus</id>
 <username>admin</username>
 <password>admin123</password>
</server>

正如您所看到的,我的存储库名为&#34; maven-test&#34;。 Nexus存储库无法通过其网址(http://localhost:8081/repository/NAME_OF_REPO/)进行浏览,这是正常的吗?

是否有任何文档必须使用Maven库来创建简单的Maven项目。最小量的.jars?

到目前为止我已尝试过:

  • 在互联网连接的机器上创建了一个简单的Maven项目,并下载了所有必需的库: mvn dependency:go-offline。之后,我将所有.jars从我当地的m2存储库部署到了Nexus(大约160个罐子 - 幸运的是我使用了Shell脚本进行部署)。对于离线模拟,我删除了本地存储库并脱机。现在,在Eclipse中创建新的Maven项目后发生错误。

我正在使用Maven 3.3.9 - Java 1.8 - Eclipse 4.4 - Mac OS

请任何帮助将不胜感激! 感谢

[编辑]忘了将.pom文件上传到Nexus。清洁安装适用于现有项目。创建新的Maven项目后仍然出现错误

1 个答案:

答案 0 :(得分:0)

在项目中运行mvn clean install而不使用nexus工具。

这会将所有必需的jar和poms下载到maven settings.xml中指定的本地存储库

将所有这些文件复制到离线nexus安装中。

您每次创建的任何新项目的警告是,他们可能需要第一个项目未使用的新罐子和poms,因此从未下载并复制到您的Nexus安装中,这会给您带来问题。