没有找到Gradle项目依赖项

时间:2015-11-09 22:56:35

标签: java eclipse gwt gradle

尝试在eclipse中构建Java gwt Gradle多项目 但无法将项目2的参考纳入项目3 任何建议都非常感谢。

结构3项目

Project 1 TmsRoot(主项目)

项目2 CommonGWT(GWT代码)

项目3普通(非Gwt)取决于CommonGWT

TmsRoot项目中的settings.gradle文件

rootProject.name = "TmsRoot"

include ":ConmonGWT", ":Common"

TmsRoot build.gradle

subprojects {
    apply plugin: 'java'
    apply plugin: 'eclipse'

repositories {
   mavenCentral()
}
dependencies {
}

version = '1.0'

jar {
    manifest.attributes provider: ' Technologies'
}
}

CommonGWT build.gradle

apply plugin: 'war'
apply plugin: 'java'
apply plugin: 'gwt'
apply plugin: 'eclipse'
apply plugin: 'jetty'
dependencies {
    compile 'org.slf4j:slf4j-api:1.7.12'
    testCompile 'junit:junit:4.12'
}

 sourceCompatibility = 1.7

 targetCompatibility = 1.7

 version = '1.0'

 buildscript {
 repositories {
     jcenter() //repository where to fetch gwt gradle plugin
 }
 dependencies {
    classpath 'de.richsource.gradle.plugins:gwt-gradle-plugin:0.6'
 }
 }
 repositories {
    mavenCentral()
 }

 compileJava{
    //enable incremental compilation
    options.incremental = true
 }
 gwt {
    gwtVersion='2.7.0'
    modules 'com.stratebo.gwt.common'

    sourceSets {
         main {
            java {
                srcDir 'src'
            }
        }
    }
    logLevel = 'ERROR'

    minHeapSize = "512M";
    maxHeapSize = "1024M";

    superDev {
    noPrecompile=true
    }
    eclipse{
        addGwtContainer=false // Default set to true
    }
    jettyRunWar.httpPort = 8089
 }
 task wrapper(type: Wrapper) {
     gradleVersion = '2.8'
 }


 task jettyDraftWar(type: JettyRunWar) {
    dependsOn draftWar
    dependsOn.remove('war')
    webApp=draftWar.archivePath
 }

最后是Common build.graddle

apply plugin: 'java'
apply plugin: 'eclipse'

dependencies {

compile project(':CommonGWT')
}

如果我点击gradle刷新依赖项 我得到以下结果 FAILURE:构建因异常而失败。

  • 其中: 构建文件'C:\ Files \ Data \ Devel6 \ Common \ build.gradle'行:8

  • 出了什么问题: 评估根项目“Common”时出现问题。 在根项目'Common'中找不到具有路径':CommonGWT'的项目。

  • 尝试: 使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。

建立失败

1 个答案:

答案 0 :(得分:1)

在我看来,你所有的3个项目目录都处于同一水平。我的意思是,根项目目录不包含在子项目的目录中,如:

.
├── TMsRoot
│   ├── build.gradle
│   └── settings.gradle
├── CommonGWT
│   └── build.gradle
└── Common
    └── build.gradle

在这种情况下,则settings.gradle文件不在子项目的根目录中,它必须不包含include,而是includeFlat,以指定子项目。