我正在尝试使用新的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。

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


当前回答

第一步:现在在你的app文件夹下,你应该看到libs,如果你没有看到它,然后创建它。

第二步:在这里拖放。jar文件,你可能会得到一个提示“这个文件不属于项目”,只需点击确定按钮。

步骤3:现在你应该在libs文件夹下看到jar文件,右键单击jar文件并选择“添加为库”,点击确定提示“创建库”

步骤4:现在已经添加了这个罐子。

其他回答

第一步:现在在你的app文件夹下,你应该看到libs,如果你没有看到它,然后创建它。

第二步:在这里拖放。jar文件,你可能会得到一个提示“这个文件不属于项目”,只需点击确定按钮。

步骤3:现在你应该在libs文件夹下看到jar文件,右键单击jar文件并选择“添加为库”,点击确定提示“创建库”

步骤4:现在已经添加了这个罐子。

的编译文件…“以前为我工作,但现在不是了。在经历了很多痛苦之后,我发现用这个方法是有效的:

编译fileTree(dir: 'libs',包括:'*.jar')

我不知道为什么会有不同,但是,至少这该死的东西现在开始工作了。

就像许多人之前指出的那样,你应该补充

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

适合你的身材。gradle文件。

然而,我在Android Studio中有一个项目,是从Eclipse迁移过来的,在这种情况下,“libs”文件夹被命名为“lib”,所以对我来说,删除“s”解决了问题。

在我的例子中,添加的库遗漏了一些依赖项,但不幸的是,Android Studio(0.8.14)对此保密。

不需要手动配置任何东西!我只是添加了缺少的库,并在应用程序构建中使用默认的依赖项配置。Gradle文件,像这样

dependencies {
    compile 'com.google.code.gson:gson:2.+'
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

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

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