Gradle构建脚本创建一个带有一些罐子和一个内部战争的EAR文件。
可以在EAR文件中为项目模块(不是第三方库!)指定非根位置吗?
我的项目布局如下:
./ear_project ear/
./jar_project_1 ==> +-jars_direct/
./jar_project_2 | +-jar1
./war_project | +-jar2
|
\-war_direct/
+-war
谢谢!
答案 0 :(得分:0)
你可以使用into - >从语法。在耳包装的build.gradle中你可以做到这一点 - 我举了一个完整的例子。感兴趣的代码接近底部。
apply plugin: 'ear'
dependencies {
//this works great - war is in the ear.
deploy project(path: ':web', configuration: 'archives')
/*
The following dependencies will become ear libs and will
be placed in a dir configured via the libDirName property.
this works great as well.
*/
earlib group: 'log4j', name: 'log4j', version: '1.2.15', ext: 'jar'
}
ear {
// put dependent libraries into lib inside the generated EAR
libDirName 'lib'
deploymentDescriptor {
// JavaEE version (e.g. JavaEE 5 xsd)
version = "5"
//in app.ear/META-INF/application.xml<display-name>"
displayName = "My Application ear display display name""
//the xml entry in application.xml - doesn't make the jar itself part of the ear
module("ejbs.jar", "ejb")
//use into to define a folder within the ear and put stuff in it
into ('jars_direct'){
from('jar_project_1'){
include 'jar1.jar'
}
from('jar_project_2'){
include 'jar2.jar'
}
}
}
}