我想用Gradle第一次。我想用一個Maven Java項目來編譯和創建一個jar文件。這是編譯和創建在建/ libs目錄的jar文件java插件中的Gradle-jar文件名
幹線 -XXXVERSION-SNAPSHOT.jar
我正在從這個Maven的Java項目的trunk目錄gradle這個build文件。
我想要得到的項目名稱(例如:PROJECT1)在jar文件名,像
PROJECT1 -XXXVERSION-SNAPSHOT.jar
在建/庫目錄。 請建議。
我想用Gradle第一次。我想用一個Maven Java項目來編譯和創建一個jar文件。這是編譯和創建在建/ libs目錄的jar文件java插件中的Gradle-jar文件名
幹線 -XXXVERSION-SNAPSHOT.jar
我正在從這個Maven的Java項目的trunk目錄gradle這個build文件。
我想要得到的項目名稱(例如:PROJECT1)在jar文件名,像
PROJECT1 -XXXVERSION-SNAPSHOT.jar
在建/庫目錄。 請建議。
默認項目名稱取自項目所在的目錄。不要明確更改jar的命名,而應該爲項目設置項目名稱。目前在build.gradle
文件中這是不可能的。相反,您必須在根目錄中創建一個settings.gradle
文件。這settings.gradle
文件應該有這樣的一個襯墊包括:
rootProject.name = 'project1'
嘗試設置:
archivesBaseName = 'project1'
或
jar.baseName = 'project1'
以下是完整的解決方案:
trunk
˪ build
˪ libs
˪ project1-1.0-SNAPSHOT.jar
˪ build.gradle
的build.gradle是:
apply plugin: 'java'
apply plugin: 'maven'
archivesBaseName = 'project1'
version = '1.0-SNAPSHOT'
group = 'example'
它生成正確的ZIP,POM和JAR。
如果你有一些submobule,您可以在使用的build.gradle(爲JAR)
configurations {
jar.archiveName = 'submodule-jar.jar'
}
非常感謝解決方案。它爲我工作。還發現我們可以使用jar的「doFirst」,它也起作用。那麼實現這個目標的最好方法是什麼? – Chakri
你對「我們可以使用doFirst for jar」有什麼意思? jar是一個「正常」的gradle任務,可以通過doLast和doFirst通過自定義操作關閉來增強它。 –
使用這個片段也可以肯定,你的其他拉鍊,maven檔案等有正確的命名,因爲他們都取決於你的項目名稱 –