Spring Boot 1.5.x の Web アプリを 2.0.x へバージョンアップする ( その9 )( gradle-errorprone-plugin を 0.0.16 → 0.6 にバージョンアップ。。。しようと思いましたが止めました )
概要
記事一覧はこちらです。
Spring Boot 1.5.x の Web アプリを 2.0.x へバージョンアップする ( その8 )( 一旦動作確認し、動作しない点があれば修正する ) の続きです。
- 今回の手順で確認できるのは以下の内容です。
- gradle-errorprone-plugin の 0.6 がリリースされていて、設定方法も大きく変わっていました。0.0.16 → 0.6 にバージョンアップしてみます。。。が、出来なかったという内容です。
参照したサイト・書籍
- tbroyer/gradle-errorprone-plugin
https://github.com/tbroyer/gradle-errorprone-plugin
目次
手順
build.gradle を変更する
build.gradle の以下の点を変更します。
plugins { id "java" id "eclipse" id "idea" id "org.springframework.boot" version "2.0.4.RELEASE" id "io.spring.dependency-management" version "1.0.6.RELEASE" id "groovy" id "checkstyle" id "com.github.spotbugs" version "1.6.4" id "pmd" id "net.ltgt.errorprone" version "0.6" id "de.undercouch.download" version "3.4.3" } .......... [compileJava, compileTestGroovy, compileTestJava]*.options*.encoding = "UTF-8" [compileJava, compileTestGroovy, compileTestJava]*.options*.compilerArgs << "-Xlint:all,-options,-processing,-path" tasks.withType(JavaCompile).configureEach { options.errorprone.errorproneArgs << "-Xep:RemoveUnusedImports:WARN" options.errorprone.errorproneArgs << "-Xep:InsecureCryptoUsage:OFF" options.errorprone.errorproneArgs << "-Xep:ParameterName:OFF" } .......... dependencies { .......... // for Error Prone ( http://errorprone.info/ ) errorprone("com.google.errorprone:error_prone_core:${errorproneVersion}") compileOnly("com.google.errorprone:error_prone_annotations:${errorproneVersion}") // JDK 8 support errorproneJavac("com.google.errorprone:javac:9+181-r4173-1") .......... }
id "net.ltgt.errorprone" version "0.0.16"
→id "net.ltgt.errorprone" version "0.6"
に変更します。[compileJava, compileTestGroovy, compileTestJava]*.options*.compilerArgs = [ ... ]
で compile と error-prone のオプションを指定していたのを[compileJava, compileTestGroovy, compileTestJava]*.options*.compilerArgs << "-Xlint:all,-options,-processing,-path"
とtasks.withType(JavaCompile).configureEach { ... }
に分けます。- dependencies block の以下の点を変更します。
errorproneJavac("com.google.errorprone:javac:9+181-r4173-1")
を追加します。
変更後、Gradle Tool Window の左上にある「Refresh all Gradle projects」ボタンをクリックして更新します。
build タスクを実行してみる
clean タスク実行 → Rebuild Project 実行 → build タスクを実行してみます。
compileTestJava タスクでエラーが 34個出て build は失敗しました。エラーの内容を見ると、テストコードで Lombok を使用して自動生成させている Getter/Setter を errorproneJavac が認識できていないようです。options.errorprone.disableWarningsInGeneratedCode = true
とかを指定してもエラーはなくなりませんでした。テストコードで Lombok を使用しないように変更すればエラーはなくなるのですが、そうまでして 0.6 にバージョンアップするか迷います。。。
https://github.com/tbroyer/gradle-errorprone-plugin には Error Prone requires at least a JDK 9 compiler.
という記述があり JDK 9 以上が本来想定されている環境のようですので、今回は gradle-errorprone-plugin のバージョンアップは止めることにします。JDK を 8 → 11 に変える時に再度試そうと思います。
履歴
2018/10/06
初版発行。