EclipseではBuildshipプラグインによりGUIで簡単にGradleのプロジェクトを作成することができます。
ある時、Gradleのプロジェクトを作成したところ、プロジェクトが入れ子になった「マルチプロジェクト」としてプロジェクトが作成され、「なんで?」となりました。
Gradleの6.7からマルチプロジェクトになった
Gradleのバージョン6.7からプロジェクトの構成が変更され、マルチプロジェクトになりました。
次のように、作成したプロジェクトに「lib」という名前のサブプロジェクトが追加されます。
旧来のシングルプロジェクトを作る
マルチプロジェクトはある程度大きなアプリケーションを作るときは、分割したプロジェクトをまとめることができて便利です。
しかし、小さなアプリケーションや検証目的でちょっとしたプロジェクトを作りたいときは、旧来のシングルプロジェクトのほうがディレクトリ構成が深くならず、見通しが良いと思います。
EclipseのBuildshipプラグインでGradleのシングルプロジェクトを作成する方法を解説します。
プロジェクトの作成
Eclipseから、新規のGradleプロジェクトを作成します。
その際、オプションの指定で、「ワークスペース設定を上書き」チェックボックスをチェックし、「Gradleバージョンの指定」で6.7未満のバージョンを選択します。
また、古いGradleは古いJavaでないと動作しないため、「拡張オプション」の「Javaホーム」でGradleに対応するバージョンのJavaのフォルダを指定します。
GradleとJavaのバージョンの互換性は、以下のページにまとめられています。
作成したプロジェクトは次のように、フラットな旧来の「シングルプロジェクト」構成になっていることがわかります。
Gradleのバージョンアップ
シングルプロジェクトは作成できましたが、作成したプロジェクトのGradle Wrapperのバージョンが古いものになっている点が気になります。
そこで、プロジェクトのGradle Wrapperのバージョンを変更することにします。
プロジェクトのgradle/wrapperフォルダのgradle-wrapper.propertiesを変更します。
distributionUrlで指定されているgradleのバージョンを変更します。
distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-bin.zip
gradle-wrapper.propertiesを直接変更しても構いませんが、Gradle 2.4からは、コマンドからバージョンを変更することもできます。
このコマンドは、gradle-wrapper.propertiesを書き換えているだけです。
gradlew wrapper --gradle-version=8.5
最後に、書き換えたgradle-wrapper.propertiesのバージョンに合わせて、Gradle Wrapper本体のjarファイルと起動コマンドgradlewを更新します。
以下のコマンドで更新されます。
gradlew wrapper