我有一個場景,在我的 Maven 存盤庫中,所需的 JAR 可用,但它不在版本檔案夾內,而是直接在組下。
例如我需要 test-1.0.0.jar
在我的 Maven 倉庫中,jar 被放置在如下路徑中,
com.java.test
----test-1.0.0.jar
但它應該像下面這樣,
com.java.test
---1.0.0
------test-1.0.0.jar
因此,當我安裝 maven 時,jar 沒有下載。是否有任何解決方法可以在不更改 maven 存盤庫結構的情況下下載 jar?
uj5u.com熱心網友回復:
我認為 test.jar 的 pom.xml 或 jar 錯誤地上傳到遠程 repo 存在問題。
在這種情況下,如果您可以控制 test.jar 代碼庫或遠程倉庫,您可以找出問題所在并進行修復。如果您無法控制它們,則可以將其視為 3rd 方罐子。使用以下命令,您可以將 jar 填充到本地 maven 存盤庫中。
mvn install:安裝檔案
基本上,此命令讀取此依賴項并在您作為引數提供的約束內安裝到您的本地 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 來更正遠程存盤庫的結構。
uj5u.com熱心網友回復:
您需要使用以下方法將 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.
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/498132.html
