Gradle - 多项目编译但未找到共享的项目类

时间:2013-12-23 08:37:44

标签: java spring build gradle

我们正在尝试设置多项目构建。

我们有两个项目:

1)PlayerManager 2)共享

当我们运行gradle.test任务时,我们的项目编译并且所有测试都成功

问题是当我们尝试从whithin eclipse运行tomcat上的项目时,我们会在共享项目中的所有文件中找到class not found错误。

这是我们的gradle.build文件:

PlayerManager(root)

=======================

apply plugin: 'war' 
apply plugin: 'jetty' 
apply plugin: 'eclipse-wtp' 
apply plugin: 'eclipse' 
apply from: 'dependencies.gradle' 
apply from: 'xmlHandler.gradle' 
apply plugin: 'base'

dependsOn(":NGShared:NGShared")

task wrapper(type: Wrapper) { 
gradleVersion = '1.9' 
}

repositories { 
mavenCentral() 
}

dependencies { 
providedCompile 'javax.servlet:servlet-api:2.5' 
compile 'org.springframework:spring-webmvc:3.2.2.RELEASE' 
runtime 'javax.servlet:jstl:1.1.2' 
}

/* Change context path (base url). otherwise defaults to name of project */ 
jettyRunWar.contextPath = ''

task cleanAndBuild(dependsOn: ['clean', 'assemble'])

assemble.mustRunAfter clean

tasks.withType(Test) { 
testLogging { 
events 'passed' 
} 
}

task testSanity(type: Test, dependsOn: testClasses) { 
exclude '*/TimeBaseTest*' 
}

共享(子项目)

=======================

apply plugin: 'java' 
apply plugin: 'eclipse' 
apply from: 'dependencies.gradle'

task wrapper(type: Wrapper) { 
gradleVersion = '1.9' 
}

settings.gradle

include ":NGShared:NGShared"

======================================================

Our path for the project is:

/NGPlayerManager/ 
/NGPlayerManager/NGShared/NGShared

任何想法为什么?

由于

1 个答案:

答案 0 :(得分:0)

你有没有尝试过“eclipseClean' gradle eclipseClean'然后' gradle eclipse'为了让gradle重新生成所有内部eclipse配置文件?如果你不这样做,Eclipse将不会自动重新生成其配置,也不会将你的子项目包含在.ear或.war包中