Android Gradle找不到符号类Gson
因此,我将gson-2.2.4.jar添加到libs目录中(我使用的是androidstudio)。我的项目找不到gson内容,所以我将其作为库依赖项添加到“项目结构”中的模块中。尝试运行项目时,生成失败,出现以下错误:Android Gradle找不到符号类Gson,android,gradle,android-gradle-plugin,Android,Gradle,Android Gradle Plugin,因此,我将gson-2.2.4.jar添加到libs目录中(我使用的是androidstudio)。我的项目找不到gson内容,所以我将其作为库依赖项添加到“项目结构”中的模块中。尝试运行项目时,生成失败,出现以下错误: Error:(12, 23) Gradle: package com.google.gson does not exist Error:(37, 3) Gradle: cannot find symbol class Gson Error:(37, 19) Gradle: ca
Error:(12, 23) Gradle: package com.google.gson does not exist
Error:(37, 3) Gradle: cannot find symbol class Gson
Error:(37, 19) Gradle: cannot find symbol class Gson
为什么我不能让它工作?我在别处读到,如果gradle放在lib dir中,它应该自动处理所有事情。在项目结构设置中添加它作为依赖项是不够的。该设置仅适用于IDE。要真正构建,Gradle还需要意识到这一点。您必须将.jar文件添加到build.gradle文件中,如下所示
dependencies {
compile files('libs/gson-2.2.4.jar')
}
我也面临同样的问题。
我只是在build.gradle依赖项中添加了一行,如下所示
(没有在项目结构中添加任何jar)并且它对我有效
dependencies {
compile 'com.google.code.gson:gson:2.2.+'
compile 'com.android.support:support-v4:13.0.+'
compile 'com.android.support:appcompat-v7:18.0.+'
}
除了上面提到的,我还发现了一些需要的东西
<uses-sdk
android:minSdkVersion="10"
android:targetSdkVersion="18" />
我也面临同样的问题 要解决这个问题,请确保为android插件指定maven central
repositories {
mavenCentral()
}
如果您正在定义构建脚本,则应该添加两次
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5+'
}
}
repositories {
mavenCentral()
}
apply plugin: 'android' dependencies {
compile 'com.google.code.gson:gson:2.2.4'
compile 'com.android.support:support-v4:13.0.0'
compile project(':libraries:volley')
}
创建文件夹名libs并添加或编辑build.gradle(适用于文件夹中的任何jar库) 再补充一点, 从Gradle 1.7开始,jcenter()是mavenCentral()的超集……因此不需要添加和存储库指令 JAR将从在线中央jcenter存储库下载。 因此,只添加以下语句是有效的
dependencies {
compile 'com.google.code.gson:gson:2.2.+'
}
就我而言,我刚刚添加了这一行:
dependencies {
compile 'com.google.code.gson:gson:2.7'
}
在我的应用程序build.gradle文件中
defaultConfig {
minSdkVersion 10
targetSdkVersion 18
}
到目前为止,2.7是最新的可用版本,根据:
请检查此存储库以确保您使用的是最新的可用版本。请尝试此GSON。将此添加到build.gradle(模块:app)
implementation'com.google.code.gson:gson:2.2.4'
我已经解决了这个问题,通过将targetSdkVersion与应用程序级模块的所有库模块相同。在build.gradle(模块:app)上添加这个
只是为了更新引用(我正在搜索):
您可以在它的上看到最新版本,在依赖项中添加以下内容可以解决我截至2021年的问题:
implementation 'com.squareup.retrofit2:converter-gson:2.5.0'
implementation 'com.google.code.gson:gson:2.2.4'
我不熟悉Android Studio的工作原理,但您的
build.gradle
文件是什么样子的?#Shai Surve-这对您仍然有效吗?我必须在libs中包含gson,并用“编译文件”引用它。是的,它对我有用。如果您未连接到internet时它不工作。然后在连接到internet时尝试同样的方法。因为它从中央maven存储库获取jar,构建过程将从在线中央maven存储库下载。太棒了!我不知道谷歌代码上有gson的人工制品。您如何找到在gradle中还可以作为依赖项引用的其他内容。远程库必须有build.gradle文件,对吗?@ShaiSurve在清单中指定使用sdk
是不必要的-它会被build.gradle
中的任何内容覆盖。谢谢Mellvar,你是对的。android studio和gradle Manifest的新版本不需要使用sdk。这是模块的build.gradle还是项目的build.gradle?注意,gson的当前版本是2.3,所以使用:dependencies{compile'com.google.code.gson:gson:2.3}
将repositories
指令再次放在顶层对我来说很有效
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
implementation 'com.google.code.gson:gson:2.8.0'
}
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.squareup.retrofit2:converter-gson:2.5.0'
implementation 'com.google.code.gson:gson:2.2.4'