2015-11-09 2 views
1

Попытка построить Java gwt Gradle multiproject in eclipse Но не может получить ссылку на проект 2 в проект 3 Любое предложение очень ценится.Gradle Project Зависимости не найдено

Структура 3 проекта

проекта 1 TmsRoot (главный проект)

Project 2 CommonGWT (GWT код)

Проект 3 Общие (Non Gwt) Зависит от CommonGWT

settings.gradle файл в проекте TmsRoot

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 
} 

И, наконец, общий build.graddle

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

dependencies { 

compile project(':CommonGWT') 
} 

Если я ударил зависимостей Gradle обновления экрана я получаю следующий результат FAILURE: Сбой сборки с исключением.

  • Где: Построить файл 'C: \ Files \ Data \ Devel6 \ Common \ build.gradle' линия: 8

  • Что пошло не так: Возникла проблема оценки корня проекта 'Общие' , Проект с дорожкой ': CommonGWT' не найден в корневом проекте 'Common'.

  • Попробуйте: Запустите с опцией --stacktrace, чтобы получить трассировку стека. Запустите с опцией --info или --debug, чтобы получить больше выходных данных журнала.

BUILD FAILED

ответ

1

мне кажется, все ваши 3 проекта каталоги находятся на том же уровне. Я имею в виду, корневой директории проекта doespn't содержат в каталогах подпроектов, как:

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

В этом случае, то settings.gradle файл не в корневом каталоге подпроектов, оно должно содержать не include, но includeFlat, чтобы указать подпроекты.

+0

hanks it works, After hours of googling никогда не видел ссылок на includeFlat. я буду спать лучше tonght –

+0

@LouisBiron вы можете. Старался найти это в официальном руководстве, чтобы дать ссылку, но не повезло. Кроме того, такая структура проектов может привести к некоторым проблемам, например, невозможно было бы создать общий проект отдельно, потому что он не найдет общий проект Gwt, так как он не установил файл.gradle в корневых каталогах – Stanislav

+0

Он выглядит как это сейчас компилируется, но я буду перемещать проекты, чтобы он не укусил меня в будущем –

Смежные вопросы