記録

主にAndroidアプリ開発に関する知見やその周辺に関わることについて記事をかいています

【Android】Java8(JDK_1_8)からJava11(JDK_11)にした場合のBitriseの設定変更

AndroidStudio Arctic Foxで新規にプロジェクトを作成するとプロジェクトのJavaSDKのバージョン情報が書かれている .idea/misc.xml で11が指定されています。

<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="ExternalStorageConfigurationManager" enabled="true" />
  <component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="11" project-jdk-type="JavaSDK">
    <output url="file://$PROJECT_DIR$/build/classes" />
  </component>
  <component name="ProjectType">
    <option name="id" value="Android" />
  </component>
</project>

今後 Java8 が使われなくなることを考慮すると Java11 で開発する環境を整えておきたいです。そこでこの新規プロジェクトをBitriseでビルドしようとすると install-missing-android-tools@2 でビルドが失敗します。

Ensure required Android SDK components
Retrying...
Failed to ensure android components, error: output: FAILURE: Build failed with an exception.
* Where:
Build file '/bitrise/src/app/build.gradle' line: 2
* What went wrong:
An exception occurred applying plugin request [id: 'com.android.application']
> Failed to apply plugin 'com.android.internal.application'.
   > Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.
     You can try some of the following options:
       - changing the IDE settings.
       - changing the JAVA_HOME environment variable.
       - changing `org.gradle.java.home` in `gradle.properties`.

Bitriseでは Java8 がプリインストールされていて全てのステップで利用されます。なので、これを Java11 に変更する必要があり、その方法はBitriseのドキュメントに記載されています。

devcenter.bitrise.io

ドキュメントにはスクリプトステップを追加するだけで対応できると書いてあるので、コードをまるまるコピーしてステップを追加するだけでした。