2013-02-08 47 views
13

我想在部署到存储库之前设置战争任务输出的文件名。 例如项目名称为abc,最初这将导致 ABC-1.0.0-SNAPSHOT.war更改生成的战争文件和重复的战争文件的名称

但我想应该有两个生成战争文件具有相同的内容:

  • def-1.0.0-SNAPSHOT.war
  • ghi-1.0.0-SNAPSHOT.war
+0

是不是以简单'copy'战争文件后,另一个文件构建过程? –

+0

我认为这是可能的,但应该有一个更优雅的方式来重命名输出文件。此外,原始的战争文件不应该部署到存储库。 – Cengiz

回答

6
task doPack(type: War, dependsOn: []) { 
    archiveName "ROOT.war" 

这为我工作

32

在的build.gradle您可以设置存档名称:

war.archiveName "YOUR_SPECIAL_NAME.war" 

gradle reference

+1

我使用这个,但它总是生成小写字母(例如'root.war')的战争文件,但我希望它是大写(例如'ROOT.war'),我怎么能做到这一点? –

+0

@Ramswaroop适合我。也许你正在建立一个像Windows一样不区分大小写的文件系统? – Sebi

+0

@Sebi Nope,我在Mac上构建。 –

8

再一个,例如:

war { 
    baseName = 'service' 
    version = '0.0.1-SNAPSHOT-' + System.currentTimeMillis(); 
}