如何使用gradle将另一个项目的构建工件添加到.war中?

pjz*_*pjz 3 war gradle

如何使用gradle将.properties文件添加到WAR中相关?但不完全:

我有一个项目,称之为"webclient",它产生:

build/out/WEB-INF/deploy/foo
build/out/client/bar.js
build/out/clientDebug/baz.js
Run Code Online (Sandbox Code Playgroud)

然后我有一个战争项目,称之为"服务器",我试图通过以下方式将上述内容包含在几个不同的目录中:

war {
    from files(project(':webclient').file('build/out/WEB-INF')) {
        into('xxx')
    }
    from files(project(':webclient').file('build/out/client')) {
        into('yyy')
    }
    from files(project(':webclient').file('build/out/clientDebug')) {
        into('zzz')
    }
}
Run Code Online (Sandbox Code Playgroud)

......但这不起作用.我最终得到了zzz /下的所有内容!难道我做错了什么?gradle中的错误(1.0-m6,btw)?

Ren*_*hke 5

我没有深入挖掘细节,但文件()方法似乎在这里引起了问题.以下解决方法应该为您解决问题:

war{     
    from (project(':shared').file('build/out/WEB-INF')) {    
        into('xxx')
    }
    from (project(':shared').file('build/out/client')) {
        into('yyy')
    }
    from (project(':shared').file('build/out/clientDebug')) {
        into('zzz')
    }
}
Run Code Online (Sandbox Code Playgroud)