2012-11-15 33 views
1

我正在使用Gradle腳本將工件從一個Maven回購站複製到另一個。我試圖通過將工件作爲依賴項來破解它,然後我們將其設置爲存檔。在Maven回購站之間移動工件的Gradle腳本

我試過使用configuration.files()方法,但我一直無法構建它將接受的依賴對象。

dependencies { 
    compile group: artGroup, name: artName, version: artVersion 
} 

artifacts { 
    archives configurations.default.files( 
     /* I have not been able to build an argument this method accepts */ 
    ) 
} 

uploadArchives { 
    repositories { 
     mavenDeployer { 
      repository(url: 'file:../../../repo') 
     } 
    } 
} 
+0

我假設前綴「藝術」意味着你正在使用Artifactory?我以爲Artifactory支持這樣做嗎?也就是說,我認爲你可以在UI中做到這一點?是不是你正在尋找一種方法來實現這個自動化? –

+0

我正在將工件從遠程回購站移至git回購中包含的本地文件系統。我們也沒有使用Artifactory,所以我們沒有看到花哨的用戶界面,我們正在尋求自動化。藝術字頭只是一個局部變量。 –

回答

1

我們已經在其他環境(從遠程複製文件到本地文件)中完成了這項工作,看起來您對Gradle DSL有一些誤解。

首先,工件{archives {}}用於將可部署工件添加到存檔配置中。你不能在這個塊中使用它(用配置文件做一些事情)。

其次,您無法上傳您「按原樣」解決的問題。上傳是通過構建生成或手動添加的構件(它們具有特殊類型)。

對於我們來說,解決方案是創建一個新的Gradle任務「copyArtifacts」,它實際上將已解析配置的所有文件複製到本地文件夾中。

希望這會有所幫助。

+0

我希望利用現有的Maven插件來發布,無益。代碼是否可共享? :) –

相關問題