2016-03-11 20 views
1

我正在使用mvn dependency:get在Linux Ubuntu上下載一些特定的* .jar(最新版本)文件。mvn依賴:在Linux中獲取-Ddest參數

我使用下面的命令:

mvn dependency:get -Dartifact=org.apache.httpcomponents:httpmime:RELEASE:jar -DrepoUrl=https://repo1.maven.org/maven2 -Ddest=/home/dev/workspace/" 

預期神器下載,但只對本地的倉庫,而不是複製到指定的位置。我也嘗試過使用

-Ddest=home/dev/workspace/ 
-Ddest=/home/dev/workspace 

但是結果沒有差異。

我知道有可能使用依賴:複製,但因此我需要一個pom.xml(我不想只爲複製命令創建)。

感謝您的幫助

+0

您shouls使用'依賴性:copy'因爲'destination'已棄用。除此之外,爲什麼你不使用通常的構建下載這些工件(通過依賴關係)... – khmarbaise

+0

我正在準備一個代碼分析工具的源代碼,這意味着,我需要得到* .jar文件〜 100個項目。所以我不需要構建項目,我只需要將jar文件添加到項目中,以便進行代碼分析 – LordToms

+0

您可以嘗試使用以下插件代替https://github.com/maven-download-plugin/maven-從谷歌下載插件。 – drgn

回答

0

我給出了一個例子。請檢查。

mvn dependency:get -Dartifact=org.apache.maven:maven-core:2.2.1:jar:sources -DremoteRepositories=http://repo1.maven.apache.org/maven2 -Ddest=/home/dev/workspace/something.jar 

您還可以使用dependency:copy作爲

文物也可通過指定分類器和可選類型來解決。類型僅用於分類器,並且默認爲java-sources。當設置分類器時,依賴關係列表將用作分類器和類型解決工件的基礎。

例如:

mvn dependency:copy-dependencies -Dclassifier=sources 

將盡力找到所有依賴的來源和複製它們。 對於像更多的數據的命令行:

mvn dependency:copy-dependencies [optional params] 

資源鏈接:

  1. http://maven.apache.org/plugins/maven-dependency-plugin/usage.html
  2. https://maven.apache.org/plugins/maven-dependency-plugin/copy-dependencies-mojo.html

UPDATE:

使用「-Ddest = path/to/my.jar」;否則,它只是複製到您的本地~/.m2/repository(使它看起來像什麼都沒有發生)。

參見http://maven.apache.org/plugins/maven-dependency-plugin/get-mojo.html#destination

示例=>

mvn org.apache.maven.plugins:maven-dependency-plugin:2.5.1:get 
-DremoteRepositories=repo.maven.apache.org 
-Dartifact=org.apache.ant:ant:1.8.1 
-Ddest=ant-1.8.1.jar 

(結果:在當前目錄螞蟻1.8.1.jar)

+0

依賴:get不工作,因爲':jar:sources'(那裏它說,無效的工件,你必須指定groupId:artifactId:version:[packaging])它只適用於我只接受':jar',但jar文件沒有加載/ home/dev/workspace。對於mvn依賴:複製,我需要指定一個pom.xml文件,我不想創建它(我必須下載大約100個項目的* .jar文件,但不需要構建項目),我只需要下載jar文件並將它們複製到正確的目錄中 – LordToms