2015-07-10 2 views
2

Я использую пару вспомогательных классов с моей сценарий сборки, структура папок выглядитКак использовать зависимости buildscript в пользовательских классах?

buildSrc  
    -src 
    -main  
     -groovy 
      GitUtils.groovy 
build.gradle 

В GitUtils я пытаюсь импортировать несколько классов (от grgit & HTTP-строителя в данном примере), используемая в пользовательской библиотеке. Но это не работает, я получаю исключения «Невозможно разрешить класс XXX». Эти классы разрешены отлично, если они находятся в build.gradle.

Соответствующая часть build.gradle:

buildscript {  
    repositories { 
    jcenter() 
    mavenCentral() 
    } 
    dependencies { 
    classpath 'org.ajoberstar:grgit:1.3.0' 
    classpath 'org.codehaus.groovy.modules.http-builder:http-builder:0.7.1' 
    } 
} 

dependencies { 
    compile 'org.ajoberstar:grgit:1.3.0' 
    compile 'org.codehaus.groovy.modules.http-builder:http-builder:0.7.1' 
} 

... 
GitUtils.doStuff(); 
+0

у вас есть 'применить плагин: 'groovy'' в вашем build.gradle? – RaGe

ответ

2

Чистое решение является объявите зависимости, которые у вас есть в GUtils в файле buildSrc/build.gradle:

apply plugin:'groovy' 

repositories { 
    jcenter() 
    mavenCentral() 
} 
dependencies { 
    compile gradleApi() 
    compile 'org.ajoberstar:grgit:1.3.0' 
    compile 'org.codehaus.groovy.modules.http-builder:http-builder:0.7.1' 
} 
+0

спасибо, добавив файл buid.gradle в buildSrc, решил его – sydd

0

Поскольку ваш buildSrc класс в заводной, пожалуйста, убедитесь, что следующие включены в build.gradle:

apply plugin: 'groovy' 

dependencies { 
    compile 'org.codehaus.groovy:groovy-all:2.2.1' 
} 
Смежные вопросы