Gradle Ear está poniendo JAR en lugar de WAR.
(2)
Estoy tratando de construir una oreja usando Gradle.
Tengo mi árbol de proyectos como:
/project
|
|--> /web-application
| |
| |--> /src (stuff of web app)
| |
| |--> build.gradle
|
|--> build-gradle
|--> settings.gradle
Estoy tratando de generar el oído utilizando el plugin de oído , pero cuando hago el gradle assemble
tengo la guerra creada en el directorio de compilación de la aplicación web , pero dentro del oído generado tengo un tarro de la aplicación web. Los archivos de configuración de Gradle son muy simples, aquí están:
proyecto / build.gradle
apply plugin: ''ear''
repositories {
mavenCentral()
}
dependencies {
deploy project('':web-application'')
earlib group: ''log4j'', name: ''log4j'', version: ''1.2.15'', ext: ''jar''
}
proyecto / aplicación web / build.gradle
apply plugin: ''war''
repositories {
mavenCentral()
}
dependencies {
compile group: ''log4j'', name: ''log4j'', version: ''1.2.15'', ext: ''jar''
}
¿Que hice mal?
Me doy cuenta de que también las muestras incluidas para el plugin de war tienen el mismo problema ... Gracias de antemano
Puede evitar especificar una configuración para cada dependencia de implementación utilizando algo como esto:
allprojects {
plugins.withType(WarPlugin) {
// Set default configuration as WAR archive if WAR plugin is used
configurations {
''default'' {
extendsFrom = [archives]
}
}
}
}
...
dependencies {
deploy project('':web-application'')
}
Resuelto
Necesita configurar el módulo WAR dentro del proyecto EAR como:
dependencies {
deploy project(path:'':web-application'', configuration:''archives'')
earlib group: ''log4j'', name: ''log4j'', version: ''1.2.15'', ext: ''jar''
}