在尝试从极其复杂的 ant 构建迁移到 gradle 的持续传奇中 - 我们有一些我正在生成的“javahelp”资源 jar 文件。它们不包含类。我需要将创建这些资源 jar 的项目的输出添加到我的战争的根目录(而不是WEB-INF/lib
)。
我尝试的解决方案:
apply plugin: 'war'
//Move files into position for the mmplEar project
task stage(overwrite: true, dependsOn: war) << {
}
war {
from project(':help:schedwincli').buildDir.absolutePath + '/libs'
include '*.jar'
}
dependencies {
//Ensure the jar is generated, but we don't want it in the lib dir
providedCompile project(':help:schedwincli')
}
这会编译并运行,并且:help:schedwincli
确实会运行并生成所需的 jar,但是当我打开我的 war 文件时,预期的 jar 在战争中的任何地方都不存在。建议?
编辑
我在下面进行了 Peter 建议的更改,但现在我收到此错误:
在配置容器上找不到属性“资源”。
这是它说它失败的地方:
from '../../runtime', /*Fails on this line*/
'../../runtime/html',
'../../runtime/html/Jboss',
'../../runtime/props',
'../../runtime/props/Jboss',
'../../scripts',
'../../../proj/runtime',
'../../../proj/runtime/html',
'../../../proj/runtime/html/Jboss',
'../../../proj/runtime/props',
'../../../proj/runtime/props/Jboss',
configurations.resources
include '*.css'
include '*.gif'
include '*.html'
include '*.jpg'
include '*.jnlp'
include '*.props'
include '*.properties'
include 'jsps/**'
include '*.jar'
include 'log4j/**'
include 'setupLdap.cmd'
include 'spreadsheets/*.xlsx'