[Android]Kotlinをバージョンアップしたら「Failed to resolve org.jetbrains.kotlin:kotlin-stdlib-jre」でエラーになる場合の対処法

Android Studioのバージョンをアップデートさせると、こんな感じでアプリをビルドするためにAndroid Studioに組み込まれている「Gradle」のプラグインのアップデートも聞いてくるので、「Update」してやると、

Kotlinのバージョンが1.3.0以上でないとだーめよって言われるので、

The Android Gradle plugin supports only Kotlin Gradle plugin version 1.3.0 and higher.

 

 

ご指示通り、プロジェクトレベルのbuild.gradleからKotlinのバージョンを上げて再同期しやると、、、

 

Failed to resolve org.jetbrains.kotlin: kotlin-stdlib-jre7: 1.3.0

というわけわからんメッセージが出てエラーになるという、

なんやそれ!?という現象の解決法です。

 

「jre」やのうて「jdk」なんだそうな。

結論から言うと、アプリケーションレベルで設定されているKotlinの標準関数のライブラリの箇所が「jre」じゃなくて「jdk」に変更しないといけないようです。

だから

compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"

compile "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"

するんだそうです。

理由は

  • Kotlinのバージョン1.2からJava9に対応できるようになった。
  • その結果、それに対応できる「jdk・・」の標準関数のライブラリが導入され、従来の「jre・・」は非推奨となった(使えるけどやめときや状態)
  • Kotlin1.3になって、従来の「jre・・」の標準関数ライブラリは使用禁止となった(使ったらあかんで状態に)

ということのようです。

くわしくは下の動画で解説していますので、よろしければご覧ください。

 

The Kotlin standard library is now fully compatible with the Java 9 module system, which forbids split packages (multiple jar files declaring classes in the same package). In order to support that, new artifacts kotlin-stdlib-jdk7 and kotlin-stdlib-jdk8 are introduced, which replace the old kotlin-stdlib-jre7 and kotlin-stdlib-jre8.

 

アバター

北川 博之(きーぼー)

みんなのプログラミング by Telulu LLC代表 大阪府生まれ。京都大学経済学部経済学科卒業。 2000年より、日本生命保険、ニッセイアセットマネジメント、パトナム・インベストメンツ(米国)で、日本株トレーダー・アナリスト、経営企画、システム開発等の業務に従事。主に日本株の売買執行・投資分析、経営計画の策定、海外投資家向け日本株営業、社内トレーディングシステム及び経理システムの開発等を行う。 2016年、合同会社てるる設立。スマホアプリプログラマーとして「新感覚脳トレアプリ・記憶戦隊オボエルンジャー」「Meisoー1番シンプルなマインドフルネス瞑想アプリ」をはじめとした、メンタルヘルス・知育系アプリを中心に4タイトル・計8本(Android・iOS)をリリース。 2017年、自身のこれまでの社会人経験・プログラミング経験・子育て経験を基に、プログラミングを通じて人々の人生を豊かにして、未来に希望の持てる明るい社会の実現に貢献したいとの想いから、プログラミング完全初心者と挫折経験のある人を支援する「プログラミング挫折撲滅プロジェクト・みんなのプログラミング by Telulu LLC」を設立し、プログラミングサポーター活動と心理カウンセリング活動を開始。これまでに3,000名を超える方のプログラミング挫折撲滅をサポート。

こんな記事も読まれています

みんプロにかける想い

  1. プログラミングはみんなのもの!(プログラミングの醍醐味である「楽しさ」を伝えたい)

  2. トランプ政権2期目に起こるIT業界激震予想(前編:スマホの世界の構造問題に荒療治が行われる可能性)

  3. ぼくが別に言う必要のない挫折の黒歴史をあえてさらけ出している理由(自分の中にある「ブロック」を外すきっかけにしてほしい)

  4. プログラミングは手段の1つに過ぎない(目的は自分のアイデアを形にすること)

  5. トランプ政権2期目に起こるIT業界激震予想(後編:ブロックチェーンによるインターネットの再民主化が行われる可能性)

みんプロ作成アプリ




みんプロ代表の黒歴史


TOP