Jar没有从maven下载



我有一个场景,在我的maven存储库中,所需的JAR是可用的,但是它不在版本文件夹中,而是直接在组下。

例如我需要test-1.0.0.jar

在我的Maven Repo中,jar放在如下路径中,

com.java.test
----test-1.0.0.jar

但是它应该像下面这样,

com.java.test
---1.0.0
------test-1.0.0.jar

因此,当我执行maven安装时,jar没有下载。在不更改maven存储库结构的情况下,有什么方法可以下载jar吗?

我认为test.jar的pom.xml或jar上传到远程repo时错误。

在这种情况下,如果您可以控制test.jar代码库或远程回购,则可以找出错误并修复它。如果你不能控制它们,你可以把它当作第三方jar。使用下面的命令,您可以将jar填充到本地maven存储库中。

mvn安装:安装文件

基本上,这个命令读取这个依赖项,并在您作为参数提供的约束条件下安装到您的本地maven存储库中。

下面的例子取自Apache Maven文档

mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> -DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>

但是请记住,这只是您本地开发的一个变通方法。从长远来看,实际问题需要解决。如前所述,应该修复test.jar的pom.xml,或者通过重新上传jar来纠正远程存储库的结构。

你需要重新上传jar Nexus的正确的道路,使用mvn deploy:deploy-file:

Windows:

cmd /v /c "set g=com.java&& set a=test&& set v=1.0.0&& mvn deploy:deploy-file -Dfile=!a!-!v!.jar -Dpackaging=jar -DgroupId=!g! -DartifactId=!a! -Dversion=!v! -DrepositoryId=your-nexus-id -Durl=https://nexus.your.comany.com repository/public"

你可以在jar所在的文件夹中执行,即使没有任何pom.xml

最新更新