gpt4 book ai didi

android - 无法在 gradle 3.0.0 beta2 中配置 Realm 生成器

转载 作者:行者123 更新时间:2023-11-29 19:05:58 27 4
gpt4 key购买 nike

我正在使用 realm 数据库 来维护我应用程序中的产品日志。!我的应用程序在配置 Realm 生成器时崩溃了。!我使用以下代码来配置 Realm 构建器。

RealmConfiguration configuration = new RealmConfiguration.Builder(AddProductItems.this).build();
realm = Realm.getInstance(configuration);
realmHelper = new RealmHelper(realm);

我也试过这段代码。

realm = Realm.getInstance(MyActivity.this);

我仍然遇到同样的错误。我正在使用 Android Studio 3.0 beta 2gradle 版本的 3.0.0-beta2

apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion "26.0.0"
defaultConfig {
applicationId "come.ajay.bill"
minSdkVersion 21
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])

implementation 'com.android.support:appcompat-v7:26.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.android.support:design:26.0.0'
testImplementation 'junit:junit:4.12'

compile 'com.android.support:recyclerview-v7:26.0.0'
compile 'com.android.support:cardview-v7:26.0.0'
provided 'io.realm:realm-android:0.87.5'
annotationProcessor 'io.realm:realm-android:0.87.5'

}

渐变(项目)

buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0-beta2'
}
}
allprojects {
repositories {
google()
jcenter()
}
}

task clean(type: Delete) {
delete rootProject.buildDir
}

我在这里添加我的控制台日志

enter image description here

最佳答案

provided 'io.realm:realm-android:0.87.5'

那是行不通的,因为这意味着您实际上并没有在您的代码中包含 Realm(这就是您收到错误的原因)。

在 AS 3.0 中,provided 应替换为 compileOnly

但是在你的情况下,它应该是

implementation 'io.realm:realm-android:0.87.5'
annotationProcessor 'io.realm:realm-android:0.87.5'

(我希望这行得通,因为您有可能会遇到以下错误 - 我尚未对此进行测试:

Annotation processors must be explicitly declared now. The following dependencies on the compile classpath are found to contain annotation processor. Please add them to the annotationProcessor configuration.

Alternatively, set android.defaultConfig.javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = true to continue with previous behavior. Note that this option is deprecated and will be removed in the future. See https://developer.android.com/r/tools/annotation-processor-error-message.html for more details.

)


值得注意的是,Realm 0.88.0 到 2.1.1 还不支持 annotationProcessor 作用域(仅 apt 作用域,AS 3.0 不支持!)如果您使用 apply plugin: 'realm-android',在这种情况下,您需要手动执行 Realm Gradle 插件在后台执行的操作(添加正确的依赖项 + 注册 RealmTransformer 任务)


另外值得注意的是,此时最新的版本是Realm-Java 5.7.0,比0.87.5新了很多。

关于android - 无法在 gradle 3.0.0 beta2 中配置 Realm 生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47237931/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com