我想使用Gradle从WAR的内容创建一个jar。我想要的结果很像archiveClasses = true setting of maven-war-plugin所做的。使用Gradle从webapp创建一个包含类和资源的JAR
我明白,gradle war插件似乎没有这样做(根据this stackoverflow question)。
有没有办法做到这一点手动?通过操作gradle jar任务来从WEB-INF文件夹中收集所需的部分?
当我只使用默认jar任务时,它不会从WEB-INF目录获取资源。
我想这样做的原因是因为我已经模块化了WAR并且模块依赖于WAR中的公共资源(在我的情况下为FreeMarker文件)。我希望能够根据从WAR创建的JAR来测试每个模块。
我知道我也可以创建一个“通用”的jar包含所有的资源,并且WAR和模块都依赖于这个,但是根据maven-战争插件。
的摇篮WAR插件似乎并不具备这些各种功能尚未;有点令人惊讶。如果你需要在短期内,我认为暂时你会被卡在普通的JAR路线上。如果你喜欢冒险,可以尝试一些哈克,比如调用Gradle的'Exec'任务来运行Maven进程。 – Durandal
这很容易实现。罐子应该包含什么? –
我想让jar做到这一点正常的源代码路径(我猜sourseSet.main.output,也许sourceSet.main.resources?)加上WEB-INF的内容,不包括类和lib,因为在我的情况下有资源在那里的目录。因此,一个包含额外目录并排除另一个目录的例子会很棒! –