2012-03-01 154 views
2

我正在使用gradle。我有一个战争项目,取决于一个Java项目。名为“shared”的java子项目生成战争项目所需的jar。这对于标准的gradle jettyRunWar来说工作得很好。我的问题是由gradle生成的eclipse项目不起作用。子项目已正确列为项目依赖项,但我在子项目类上获得了ClassNotFoundExeptions。我无法弄清楚为什么gradle没有在战争部署中包含子项目的classes文件夹。gradle - 在eclipse的父项目战中部署子项目jar

从父/的build.gradle:

compile project(path: ':shared', configuration: 'jarConfig') 
从共享/的build.gradle

configurations 
{ 
    jarConfig 
} 

artifacts 
{ 
    jarConfig jar 
} 

回答

1

我还没有专门用于Eclipse插件而是想法插件。

父文件应具有以下(它可能做的话):

apply plugin: 'war' 
dependencies { 
    runtime project(':shared') 
} 

你的子模块应该有:

apply plugin: 'java' 

它不应该是必要创建自己的jar config配置。 Gradle已经为你做了类似的事情。

如果这没有帮助,您可以提供您的“共享”的build.gradle的一些示例代码和你的父母的build.gradle一些更多的细节。

而且这将是有益的你(和人民帮助您在此处)知道这些文件是如何构建。您的构建文件夹中有什么。罐子是否构建?罐子是否投入战争?