12

カスタム gradle プラグインを開発しており、プラグイン プロジェクトの依存関係は次のようになります。

dependencies {
  compile gradleApi()
  compile localGroovy()
  compile('com.xxx.oozie:oozie-dsl-parser:1.0.127') {
    exclude module: 'groovy-all'
  }

  testCompile('org.spockframework:spock-core:1.0-groovy-2.3') {
    exclude module: 'groovy-all'
  }
}

ただし、再現可能なビルドのために、localGroovy()andを使用することをgradleApi()お勧めします。

多くのグーグル検索の後localGroovy()、特定のバージョンのgroovyに置き換えることはできましたが、何を置き換えるかについて決定的な答えを見つけることができないようですgradleApi().

何か提案はありますか?

ありがとう!

4

2 に答える 2

3

を適用することをお勧めしjava-gradle-pluginます。依存関係が自動的に追加さgradleApi()れ、他のボイラープレート構成も含まれます: https://docs.gradle.org/current/userguide/javaGradle_plugin.html#gsc.tab=0

gradleApi()依存関係として追加されるのバージョンは、プロジェクトのビルドに使用している Gradle のバージョンによって異なります。たとえば、ラッパーに Gradle 2.14.1 がある場合、使用される Gradle API はそのバージョンになります。

また、プラグインによって追加される依存関係にlocalGroovy()既に含まれているため、心配する必要はありません: https://docs.gradle.org/current/userguide/test_kit.html#sub:test-kit-automatic-classpath -注入&gsc.tab=0gradleTestKit()

次に例を示します。

apply plugin: 'groovy'
apply plugin: 'java-gradle-plugin'

dependencies {
    testCompile('org.spockframework:spock-core:1.0-groovy-2.4') {
        exclude module: 'groovy-all'
    }
}
于 2017-03-10T13:12:23.177 に答える