我正在尝试使用Gradle构建一个ear。
我的项目树就像:
/project
|
|--> /web-application
| |
| |--> /src (stuff of web app)
| |
| |--> build.gradle
|
|--> build-gradle
|--> settings.gradle我试图使用ear插件生成ear,但是当我使用gradle assemble时,会在web应用程序的构建目录下创建war,但是在生成的ear中,我有一个web应用程序的jar。gradle配置文件非常简单,如下所示:
项目/build.gradle
apply plugin: 'ear'
repositories {
mavenCentral()
}
dependencies {
deploy project(':web-application')
earlib group: 'log4j', name: 'log4j', version: '1.2.15', ext: 'jar'
}项目/网络-应用程序/build.gradle
apply plugin: 'war'
repositories {
mavenCentral()
}
dependencies {
compile group: 'log4j', name: 'log4j', version: '1.2.15', ext: 'jar'
}我做错了什么?
我注意到,战争插件的捆绑样本也有同样的问题.提前感谢
发布于 2013-03-12 13:51:15
解决了!
它需要将EAR项目中的WAR模块配置为:
dependencies {
deploy project(path:':web-application', configuration:'archives')
earlib group: 'log4j', name: 'log4j', version: '1.2.15', ext: 'jar'
}发布于 2016-12-23 06:38:41
您可以避免使用以下内容为每个部署依赖项指定配置:
allprojects {
plugins.withType(WarPlugin) {
// Set default configuration as WAR archive if WAR plugin is used
configurations {
'default' {
extendsFrom = [archives]
}
}
}
}
...
dependencies {
deploy project(':web-application')
}https://stackoverflow.com/questions/15360703
复制相似问题