我正在尝试使用新的Android Studio,但我似乎不能让它正常工作。

我正在使用Gson库来序列化/反序列化json对象。但是这个库不知何故没有包含在构建中。

我用MainActivity创建了一个新项目。 复制gson-2.2.3.jar到/libs文件夹中,并将其添加为库依赖项(右键单击->添加为库)。这包括android studio中的jar,因此可以从源文件中引用它。

当我尝试运行项目时,它无法编译,所以我添加:

compile files('libs/gson-2.2.3.jar')

到de .gradle文件中的依赖项。之后,它正确编译,但当运行应用程序时,我得到一个ClassDefNotFoundException。

有人知道我哪里做错了吗?


当前回答

以上3个步骤我已经做到了,它的工作魅力对我来说。

(我使用Android Studio 2.1.2)

步骤1

将你的jar包名称(例如编译'com.squareup.okhttp3:okhttp:3.3.1')添加到build.gradle(Module:app)下的gradle构建脚本中。

步骤2: 右键单击app文件夹->新建->模块

步骤3:单击“导入JAR/”。然后浏览您的包。例如:OkHttp.jar

其他回答

在app级别添加了libs文件夹。 在这个项目中添加了所有的罐子。 接下来,选择所有的罐子,在libs文件夹中, 右键单击所选项目,并选择添加库 然后,您将在项目资源管理器本身中找到jars扩展选项。

我观察到CTRL + ALT + SHIFT + S——>项目结构——>应用程序模块——>依赖项“已经有一个条目作为(dir: 'libs',包括:'*.jar')下编译选项,最初。在按照上面的步骤添加了罐子之后,构建。Gradle获得了新添加的jar本身的条目。

在Mac OS X上:

将jar添加为库(将jar拖到libs,右键单击添加为库) 在build.grade中添加compile语句 安装gradle v1.6(使用自制软件) Brew install gradle gradle - v 如果不是v1.6,升级homebrew Gradle清洁(重建android不工作)

这让我理清了思路。

下面是将本地jar文件作为库添加到模块的说明:

Create a 'libs' folder in the top level of the module directory (the same directory that contains the 'src' directory) In the build.gradle file add the following so that your dependencies closure has: dependencies { // ... other dependencies compile files('libs/<your jar's name here>') } Android Studio should have already setup a gradlew wrapper. From the command line, navigate to the top level of your project (the directory that has a gradlew file). Run ./gradlew assemble. This should compile the project with the library. You may need to fix errors in your build.gradle file as necessary. In order to have Android Studio recognize the local jar files as libraries for support while coding in the IDE, you need to take a few more steps: 4.1. Right click on the module in the left hand panel and choose Open Library Settings. 4.2. On the left panel of the dialog, choose Libraries. 4.3. Click the + sign above the panel second from the left -> Java 4.4. Select your local jar and add it to the project. You may need to run the above ./gradlew command one more time

编译fileTree(dir: 'libs',包括:'*.jar')工作正常,但编译文件(…)已在Studio Beta 0.8.1测试

对于更新的Android 1.0.2,以下内容已经在您的构建中。gradle文件

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

将库jar添加到你的libs文件夹->右键单击库->单击添加为库->它会要求你为项目添加它->选择你的项目->单击确定 下面的行会自动添加到build.gradle中

implementation files('libs/android-query.jar')

这对我很有帮助。没有别的要求了。我已经为android演示了另一个第三方库。