技術系(Tips)
PR

IntelliJ上でGradleビルド時に「Deprecated Gradle features were used in this build」が出たので調べた

saratogax
記事内に商品プロモーションを含む場合があります

Gradle でプロジェクトのビルドをしたら以下の警告メッセージが表示されて嫌な予感。
(一部抜粋)

Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
Use ‘–warning-mode all’ to show the individual deprecation warnings.

メッセージの通り、使用しているバージョンは 4.10 だけど、5.0 から推奨されなくなるものがあるということです。

ちなみに、バージョンを 4.8 や 4.8.1 に落としてみても同じく警告は出ます。

4.10 の方が若干メッセージが詳しくなっている程度でしょうか。

Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.

今回は、IntelliJ IDEA の IDE 上で、この警告メッセージの詳細な内容を調べてみたいと思います。

コマンドラインから gradle を実行している場合は、メッセージの通り以下をオプション指定すれば OK です。

–warning-mode all

warning-modeの設定場所

.gradle の配下に gradle.properties を作って、そこに定義しろって情報が見つかりましたが、残念ながら認識はしてくれませんでした。

あれこれ悩んで gradle のシェルに強引に追加してみたのですが、こちらも上手くいかず。

VM Option で引数を足してみたり・・・(破茶滅茶なことしてるな)

-Dorg.gradle.warning.mode=all

落ち着いて考えてみたところ、Gradle の Service Directory Path の設定は Mac だと以下になっているので、プロジェクトフォルダの .gradle ではなくてここのディレクトリのことですね。

/Users/USERNAME/.gradle

gradle.propertiesの作成

ということで、所定の場所にプロパティファイルを作成します。

$ vi /Users/USERNAME/.gradle/gradle.properties

org.gradle.warning.mode=all

ふー、ようやく警告の詳細が確認できました。

The project name ‘hoge/fuga’ contains at least one of the following characters: [ , /, \, :, <, >, “, ?, *, |].This has been deprecated and is scheduled to be removed in Gradle 5.0. Set the ‘rootProject.name’ or adjust the ‘include’ statement

要するに、プロジェクト名にスラッシュを使用するなよってことですね。

ってことで、命名した人にバトンタッチしてメデタシメデタシ。

すぐに対応しないような警告の場合は、ビルド時に詳細な警告メッセージが邪魔になるのでコメントアウトしておくといいと思います。

冒頭の警告メッセージは出続けちゃいますけどね。

$ vi /Users/USERNAME/.gradle/gradle.properties

#org.gradle.warning.mode=all
ABOUT ME
saratoga
saratoga
フリーランスエンジニア
仕事にも趣味にも IT を駆使するフリーランスエンジニア。技術的な TIPS や日々の生活の中で深堀りしてみたくなったことを備忘録として残していきます。
記事URLをコピーしました