我正在使用gradle。我有一个依赖于java项目的war项目。名为“shared”的java子项目生成war项目所需的jar。这适用于标准gradle jettyRunWar。我的问题是gradle生成的eclipse项目不起作用。子项目被正确列为项目依赖项,但我在子项目类上获得了ClassNotFoundExeptions。我无法弄清楚为什么gradle不包括war部署中的子项目的classes文件夹。
来自parent / build.gradle:
compile project(path: ':shared', configuration: 'jarConfig')
来自shared / build.gradle:
configurations
{
jarConfig
}
artifacts
{
jarConfig jar
}
答案 0 :(得分:1)
我没有专门使用eclipse插件,而是使用了想法插件。
您的父文件应具有以下内容(可能已经存在):
apply plugin: 'war'
dependencies {
runtime project(':shared')
}
你的子模块应该有:
apply plugin: 'java'
没有必要创建自己的jar配置配置。 Gradle已经为你做了类似的事情。
如果这没有帮助,您是否可以提供一些“共享”build.gradle的示例代码以及来自父build.gradle的更多详细信息。
同样,对您(以及帮助您的人)了解文件的构建方式也是有益的。你的构建文件夹中有什么。罐子是否构建?罐子是否投入了战争?