【问题标题】:How to get the latest Room version?如何获取最新的 Room 版本?
【发布时间】:2019-01-17 15:14:02
【问题描述】:

您知道在哪里可以获得 Room 的最新版本吗?

this Android Studio page 上,引用了最新的 Room 版本是 2.1.0-alpha3 但是当我将此版本放入我的 build.gradle 文件时,项目无法编译并显示以下错误:

ERROR: Failed to resolve: android.arch.persistence.room:runtime:2.1.0-alpha3
Show in Project Structure dialog
Affected Modules: app

【问题讨论】:

    标签: android database kotlin


    【解决方案1】:

    引用最新的Room版本是2.1.0-alpha3

    是的。

    当我将此版本放入我的 build.gradle 文件时,项目无法编译并显示以下错误

    你的版本很好。您的工件是问题所在。

    所有新库都是 AndroidX。您的选择是:

    • 坚持使用您现在使用的任何版本,并保留您的 android.arch.persistence.room:runtime 工件及其类,或者

    • 迁移到 AndroidX,在这种情况下,您将使用 androidx.room:room-runtime 作为工件,并且需要更改代码以引用 Room 和其他所有内容的 androidx

    【讨论】:

    • 好的,谢谢!我将使用似乎可以解决此问题的代码来更新问题,希望它能在相同的情况下对其他人有所帮助:)
    【解决方案2】:

    问题是,如果您使用的是AndroidX,那么最新的是2.1.0-alpha3,或者,如果您使用的是Support libraries,那么它是1.1.1 或任何最新的,这就是documentation 中提到的内容.正如 CommonsWare 所提到的,它是工件,要找出映射,请参阅mapping documentation。 AndroidX 是:

    AndroidX 库包含现有的支持库以及 包括最新的Jetpack 组件。

    使用支持库的示例:

    dependencies {
        // Other libraries...
        implementation 'android.arch.persistence.room:runtime:1.1.1'
        annotationProcessor 'android.arch.persistence.room:compiler:1.1.1'
    }
    

    【讨论】:

    • 好的,这并不像我想象的那么容易。感谢你们俩为我指明了一个充满希望的方向:)
    • 不,但我将尝试在新项目中选中“AndroidX”复选框,我认为这会更容易。
    • 或者只是在 Android Studio 下找到“迁移到 AndroidX”> 为您的旧项目重构。如果可能的话,将 AS 更新到 3.3。
    • 我就是这么做的,拉贾希。感谢所有回复!
    【解决方案3】:

    解决方案是在Android Studio中启动新项目时检查AndroidX,然后在App Module Build.Gradle文件中完美运行:

    def room_version = "2.1.0-alpha03"
    implementation "androidx.room:room-runtime:$room_version"
    kapt "androidx.room:room-compiler:$room_version" // use kapt for Kotlin
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-02
      • 1970-01-01
      • 2011-09-14
      • 1970-01-01
      • 2015-03-15
      • 1970-01-01
      • 2017-04-17
      • 2010-10-15
      相关资源
      最近更新 更多