Mar*_*nek 7 war gradle spring-boot
如何更改战争名称?
我已经尝试过(我在文档https://docs.gradle.org/4.10.2/dsl/org.gradle.api.tasks.bundling.War.html 中找到了这些参数)
war {
baseName = 'service'
archiveName 'service.war'
}
Run Code Online (Sandbox Code Playgroud)
但是,这是行不通的。我仍然使用快照版本获得名称。
./build/libs/search-0.0.1-SNAPSHOT.war
Run Code Online (Sandbox Code Playgroud)
我正在使用 Gradle 4.10 和 Spring Boot 2.1.2.RELEASE。
M.R*_*uti 14
请参阅此文档:Spring Boot Gradle 参考
总结一下:当Spring Boot gradle插件和plugin一起应用时war,war任务默认是禁用的,被SpringBootbootWar任务“替换”了。
因此,如果要配置战争工件,则需要配置bootWar任务而不是基本war任务:
bootWar {
baseName = 'service'
archiveName 'service.war'
}
Run Code Online (Sandbox Code Playgroud)
补充说明:
archiveName已被弃用,您应该archiveFileName改用archiveName属性,则不需要设置baseName属性M. Ricciuti 的回答是正确的,但需要注意的是,即使archiveName在 Gradle 5.x 中已被弃用,Spring Boot 仍在 2.1.6.RELEASE 中使用它。例如,如果bootWar任务配置了这样的新archiveFileName属性:
bootWar {
archiveFileName 'service.war'
}
Run Code Online (Sandbox Code Playgroud)
你会得到这个错误:
无法在 org.springframework.boot.gradle.tasks.bundling.BootWar 类型的任务“:bootWar”上找到参数 [service.war] 的方法 archiveFileName()。
暂时使用archiveName。有关详细信息,请参阅 Spring BootWar 类 Java 文档。他们可能会archiveFileName在未来添加。
小智 5
bootWar {
archiveFileName.set 'service.war'
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7370 次 |
| 最近记录: |