我正在尝试使用 Gradle 构建一个 war 文件,但遇到了一个问题,即排除一个目录并包含另一个恰好具有相同名称但父目录不同的目录。
请注意,在下面的第一个代码示例中,两者都没有css/
目录将包含在最终版本中war
文件——我假设是因为 Gradle 认为我想排除任何目录 named css/
无论其绝对路径如何。
基本上我想排除src/main/webapp/css
并包括build/tmp/css
因为后者包含缩小的代码。我怎样才能实现这个目标?我尝试过以各种方式指定绝对路径,但没有取得任何成功。
war {
dependsOn minify
from('build/tmp/') { include ('css/') }
exclude('WEB-INF/classes/', 'css/')
}
如果我不排除css/
像这样:
war {
dependsOn minify
from('build/tmp/') { include ('css/') }
exclude('WEB-INF/classes/')
}
那么结果是压缩代码和非压缩代码都被包含在内。
我不确定你为什么排除WEB-INF/classes/css
代替src/main/webapp/css
在你的 build.gradle 中,但是复制缩小的 CSS 文件而不是原始文件是通过以下方式实现的:
apply plugin: 'war'
war {
// dependsOn 'minify'
from 'src/main/webapp'
exclude 'css' // or: "exclude 'WEB-INF/classes/css'"
from('build/tmp/css') {
include '**/*.css'
into 'css' // or: "into 'WEB-INF/classes/css'"
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)