mike-neckのブログ

Java or Groovy or Swift or Golang

Groovy が書けない人のための Gradle 入門

若干ネタ気味ですが、 Groovy を覚えるのが面倒だけど、 Kotlin を覚えるのも面倒という方のためにお勧めしたいのが、 Java で書くという方法です。

f:id:mike_neck:20190619163018p:plain

というわけで、次のような build.gradle を書きます。

Project project = getProject();

project.getPluginManager().apply("java-library");

project.setGroup("org.example");
project.setVersion("1");

project.setSourceCompatibility(JavaVersion.VERSION_11);
project.setTargetCompatibility(JavaVersion.VERSION_11);

project.getRepositories().mavenCentral();

project.getDependencies().add("implementation", "org.slf4j:slf4j-api:1.7.25");
project.getDependencies().add("testImplementation", "org.junit.jupiter:junit-jupiter:5.4.2");

project.getTasks().<Test>named("test", Test.class, new Action<Test>() { @Override public void execute(Test test) { test.useJUnitPlatform(); }  });

では、ビルドを走らせてみましょう

f:id:mike_neck:20190629120614p:plain

見事ビルドできたようです。


Groovy は Java なので、 Groovy がわからないと焦る前に、 Java で書いてしまえばよいです

ただ、一つだけ注意点があって、Gradle が使っている Groovy のバージョンが 2.5.x のため、 Java8 の lambda のような記述を解釈できないので、 Actionインスタンスに対しては匿名クラスで対応せざるを得ないことです。