倭マン's BLOG

くだらない日々の日記書いてます。 たまにプログラミング関連の記事書いてます。 書いてます。

Java 7 × Groovy 2.0 (× Eclipse)

5日ほど前Java 7, Groovy 2.0 を使い、IntelliJ IDEA で開発する Gradle プロジェクトの build.gradle ファイルを見ました。 今回はそれの Eclipse 版を見ていきます。

IntelliJ IDEA の設定を書く idea ノードの代わりに Eclipse の設定を書く eclipse ノードを書いているだけで、他はほとんど同じです:

apply plugin:'groovy'
apply plugin:'eclipse'    // eclipse プラグイン

defaultTasks 'cleanEclipse', 'eclipse'
//defaultTasks 'test'    // テストを実行
//defaultTasks 'clean', 'build'

version = '0.1'
def jdkVersion = 1.7
def enc = 'UTF-8'

sourceCompatibility = jdkVersion
targetCompatibility = jdkVersion
tasks.withType(Compile){ options.encoding = enc }

// ***** Settings for dependencies *****
repositories {
    mavenCentral()
}

dependencies {
    groovy 'org.codehaus.groovy:groovy-all:2.0.0-beta-1'
    compile 'org.codehaus.gpars:gpars:0.11'
    testCompile 'junit:junit:4.10'
}

// ***** Settings for Executable Jar *****
jar {
    manifest.attributes 'Main-Class':'《Jar 実行の際のメインクラス》', 'Implementation-Version': version
    //from configurations.runtime.collect { it.isDirectory() ? it : zipTree(it) }
}

// ***** Settings for Eclipse *****
eclipse{
    // これで変数の設定ができるらしいけど、イマイチうまく反映されない・・・
    pathVariables 'GRADLE_HOME': file('/best/software/gradle')

    // お好みに合わせて
    classpath{
        defaultOutputDir = compileJava.destinationDir

        downloadSources = false
        downloadJavadoc = true
    }

    // IntelliJ IDEA の場合と違って必要なし
    //jdt {
    //    sourceCompatibility = jdkVersion
    //    targetCompatibility = jdkVersion
    //}
}

IntelliJ IDEA の場合とは異なり、eclipse の設定には Java のバージョンを設定する必要はないようです。 デフォルトで build.gradle 前半で設定している sourceCompatibility, targetCompatibility の値が読まれます(設定を行えば書き換えられますが、それが必要になることはあまり考えられませんね)。 IntelliJ IDEA でもそうなってくれると楽なんですが。

NetBeans の設定ファイルを生成するプラグインはデフォルトで Gradle に入ってないようですが、NetBeansEclipse プロジェクトを読み込めるようなのでパス。 探せば NetBeans の Gradle プラグインもあるかと思いますが。

プログラミングGROOVY

プログラミングGROOVY


Eclipseで学ぶはじめてのJava 第2版(DVD付)

Eclipseで学ぶはじめてのJava 第2版(DVD付)