gikoha’s blog

個人的メモがわり

IntelliJ の kotlin が v1.7 になってから ターゲットJVM 1.6 が使えなくなった

  • kotlin 1.7にあがってからJVM1.6が使えなくなった
    • これはもとからそうなので甘んじろ
  • 一方で絶対JVM1.6でないといけない環境がある
    • ただし一介の利用者にはその多数の環境は絶対に変更できないものとする
    • なーにが runs everywhereだ
  • 従ってどうにかするには
    • M1 macの場合 brew install zulu8 で zulu8 1.8 JDKをインストールする
    • Project Language Levelを 6 にする (プロジェクト構造>言語レベル>6 = Java1.6)
    • Kotlin compilerを 1.6.21バージョンにする
    • ターゲットJVM バージョンを1.6(非推奨)にする
    • これだけだとなぜか下記のエラーが出てしまう
  Kotlin: Unknown JVM target version: 1.6 (非推奨)
  Supported versions: 1.6, 1.8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18
  • プロジェクトの.idea内のkotlinc.xmlを書き換える
   <option name="jvmTarget" value="1.6 (非推奨)" />
  から
   <option name="jvmTarget" value="1.6" />
  にする
  • ビルドからプロジェクトの再ビルドを選ぶ
  Kotlin: kotlinc-jvm 1.6.21 (JRE 1.8.0_282-b08)
  Kotlin: JVM target 1.6 is deprecated and will be removed in a future release. Please migrate to JVM target 1.8 or above
  • warningは出るがビルド成功
  • これってIntelliJのバグだよねえ