当前位置: 首页 > 知识库问答 >
问题:

找不到方法com.Android工具。r8.Version。getVersionString()Ljava/lang/String;'

裴心思
2023-03-14

我已经将我的android studio更新为3.4。我在进行发布构建时出错。

Unable to find method 
'com.android.tools.r8.Version.getVersionString()Ljava/lang/String;'.
Possible causes for this unexpected error include:
Gradle's dependency cache may be corrupt (this sometimes occurs after 
a network connection timeout.)
Re-download dependencies and sync project (requires network)

The state of a Gradle build process (daemon) may be corrupt. Stopping 
all Gradle daemons may solve this problem.
Stop Gradle build processes (requires restart)

Your project may be using a third-party plugin which is not compatible 
with the other plugins in the project or the version of Gradle 
requested by the project.

In the case of corrupt Gradle processes, you can also try closing the 
IDE and then killing all Java processes.

我已经更新了gradle中的依赖项这是我的gradle文件

dependencies {
//Retrofit networking libraries
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
implementation 'com.squareup.retrofit2:adapter-rxjava:2.4.0'
implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
//Use for converting JsonObject to Plain Text in retrofit
implementation 'com.squareup.retrofit2:converter-scalars:2.1.0'
//http logging interceptor
implementation 'com.squareup.okhttp3:logging-interceptor:3.8.0'
// For circular progressbar design
implementation 'me.relex:circleindicator:1.2.2@aar'

//Crashlytics library dependency
implementation('com.crashlytics.sdk.android:crashlytics:2.6.5@aar') {
    transitive = true;
}
//ViewModel concept used in 
implementation 'android.arch.lifecycle:extensions:1.1.1'
implementation 'android.arch.lifecycle:livedata-core:1.1.1'

//RangeSeekBar Design 
implementation 'com.yahoo.mobile.client.android.util.rangeseekbar:rangeseekbar-library:0.1.0'

//Clevertap events
implementation 'com.clevertap.android:clevertap-android-sdk:3.2.0'

//For volley networking library implementation
implementation 'com.android.volley:volley:1.1.0'
//For token passing classes
implementation 'com.auth0.android:jwtdecode:1.1.1'
//Rooted device finding library
implementation 'com.scottyab:rootbeer-lib:0.0.7'

//Facebook integration
implementation 'com.facebook.android:facebook-android-sdk:4.35.0'
//New Relic interation library
implementation 'com.newrelic.agent.android:android-agent:5.9.0'

//Calender library
implementation project(':library')
//Channel level encryption library
implementation files('libs/bcprov-jdk15on-160.jar')
//Injection tool
annotationProcessor 'com.jakewharton:butterknife:6.1.0'
implementation 'com.jakewharton:butterknife:6.1.0'

/*annotationProcessor 'com.jakewharton:butterknife:10.1.0'
implementation 'com.jakewharton:butterknife:10.1.0'*/

//Image Loading library
implementation 'com.github.bumptech.glide:glide:3.7.0'
//Secure SQLite Database
implementation 'net.zetetic:android-database-sqlcipher:3.5.9@aar'
//Branch .io library
implementation('io.branch.sdk.android:library:2.+') {
    exclude module: 'answers.shim'
}

//noinspection GradleCompatible

implementation 'com.android.support:appcompat-v7:26.0.2'
implementation 'com.android.support:design:26.0.2'
implementation 'com.google.android.gms:play-services:11.0.1'
implementation 'com.google.android.gms:play-services-maps:11.0.1'
implementation 'com.google.firebase:firebase-core:11.0.1'
implementation 'com.google.firebase:firebase-messaging:11.0.1'
implementation 'com.android.support:support-v4:26.0.2'
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation project(':mpointintegration')

}

我没有使用kotlin。我检查了下面的各种资源,但没有一个有效

Java语言lang.NoSuchMethodError-Ljava/lang/String;)Ljava/lang/String;

Android Studio 3.0-找不到方法com.Android建筑格拉德尔。内部的变种BaseVariantData。getOutputs()Ljava/util/List'

还尝试了重新下载依赖项和同步项目

项目级渐变文件

// Top-level build file where you can add configuration options common 
to all sub-projects/modules.

buildscript {
repositories {
    jcenter()
    mavenCentral()
    google()
    maven { url "http://storage.googleapis.com/r8-releases/raw"}
}
dependencies {
    classpath ('com.android.tools:r8:1.3.52' ) { transitive false }
    classpath 'com.android.tools.build:gradle:3.4.0'
    classpath 'com.google.gms:google-services:4.2.0'
    classpath "com.newrelic.agent.android:agent-gradle-plugin:5.9.0"
    // NOTE: Do not place your application dependencies here; they 
belong
    // in the individual module build.gradle files
}
}


allprojects {
repositories {
    jcenter()
    maven {
        url 'https://maven.google.com'
    }

   // maven { url 'https://jitpack.io' }
    google()
}
}
ext {
 minSdkVersion = 15
 targetSdkVersion = 26
 compileSdkVersion = 26
 buildToolsVersion = '26.0.2'
 sourceCompatibilityVersion = JavaVersion.VERSION_1_8
 targetCompatibilityVersion = JavaVersion.VERSION_1_8
 }
 task clean(type: Delete) {
 delete rootProject.buildDir
 }
 ext.deps = [
    // Test dependencies
    junit      : 'junit:junit:4.10',
    festandroid: 'com.squareup:fest-android:1.0.7',
    robolectric: 'org.robolectric:robolectric:2.2',
    intellijannotations: 'com.intellij:annotations:12.0'
 ]

共有2个答案

甄志
2023-03-14

我解决了它。从android studio 3.4 R8版本控制添加到android studio中。所以我在我的构建中做了一些更改。gradle文件和gradle。属性文件

在我的应用程序级别build.gradle文件在发布部分我添加了一行

useProguard false
android.enableR8=true

因此,它将使用R8版本控制来创建我的APK。

如果您不想使用R8版本控制并想继续使用proguard,那么

 android.enableR8=false //in gradle.properties file

希望这能帮助别人

乌修筠
2023-03-14

问题是,您对R8 1.3.52有固定版本依赖:

classpath ('com.android.tools:r8:1.3.52' ) { transitive false }

和com.Android工具。r8.版本方法

public String getVersionString()

仅在R8 1.4及以上版本中存在。

我假设您使用的是固定版本的R8,因为该版本中存在错误修复。但是,这也应该在最新版本中得到修复,因此我建议您删除固定的R8版本依赖项并使用Android Studio附带的内容。

 类似资料:
  • 除了这个错误之外,我似乎在依赖项方面有很多问题,我正在试图修复它们,但我对Maven来说是一个完全的新手: 罐子未加载。参见Servlet规范2.3,第9.7.2节。违规类:javax/el/expression.class> 罐子未加载。参见Servlet规范2.3,第9.7.2节。违规类:javax/el/expression.class> null null null null null 我

  • 线程“main”java.lang.nosuchmethoderror中出现异常:com/myapp/client.cyphercbc(ljava/lang/string;)ljava/lang/string; 但它在另一个本地环境中运行良好。到目前为止我的代码在下面;

  • 问题内容: 我使用Omnifaces 1.3 + Primefaces 3.4.1 + 7.1.1的Jboss决赛,但我不能重定向与例外对我的配置,当他们通过Ajax请求。什么也没发生,只是另一个例外: 有人可以给我小费吗?我被卡住了。如果我在没有ajax的情况下调用相同的错误,则会正确重定向异常。 我的: 我的: 谢谢! 问题答案: java.lang.AbstractMethodError:o

  • 我不知道这里发生了什么。我使用Date数据类型将数据保存在数据库中,但它一直给出这样的错误--访问数据库的错误:javax.servlet.servletException:java.lang.noSuchMethoderRror:model.addevents.getStartDate()ljava/lang/string;。我认为问题出在我的servlet和java bean中的Date类型的

  • 我正在从检索小区信息数据() 对于每个小区信息对象,我通过以下途径查询mcc(移动国家代码)和mnc(移动网络代码) 其中eachCellInfo是CellInfo的对象 根据文档,不推荐使用该函数: 但是,当我使用建议的方法通过 方法说明: 其他信息:

  • 在我的Android项目构建中遇到了一个问题。我使用Grgit在Gradle中填充和。在我将Android Studio和gradle工具更新到更新版本(构建3.4.0和发行版5.1.1)之前,一切都运行得很好。 失败并显示错误: Task运行良好并显示: 模块build.gradle文件: