2013年9月7日土曜日

Gradle での他プロジェクトへの依存性

Gradleが便利なので利用するようになった。利点は以下のもの。

1)Mavenのリポジトリが利用できる
2)Groovyなので、小回りがきく

Eclipseでplungin  をいれて利用していたが、2つ作成したGradleプロジェクトに依存関係を入れる時にちょっとはまる。
Eclipseのビルドパスで、他のプロジェクトを指定すると、Eclipseではコンパイルも実行も問題ないのだた、GradleのInstallAppなどを指定すると、とたんにコンパイルエラーとなる。
G が E の依存関係を理解していないのが原因。ググってみても簡単な解決策なし。最初から親子プロジェクトにしておけば、以下の形式でOK。

 compile project(':projectA')

結局、maven プラグインを追加して、ローカルリポジトリを利用した。

■参照される側の build.gradle => install タスクにてローカルリポジトリに作成される。

apply plugin: 'maven'

version = '1.0'
group = 'net.korabo.app'
//archivesBaseName = 'UmlGenerator'
version = '1.0'

■参照する側の build.gradle => mavenLocalの指定が必要

repositories {
mavenLocal()
    mavenCentral()
}

dependencies {
    compile group: 'net.korabo.app', name: 'UmlGenerator', version: '1.0'
    ....
}

0 件のコメント: