IntelliJ IDEA中Android项目的依赖处理

IntelliJ IDEA中Android项目的依赖处理,android,intellij-idea,Android,Intellij Idea,我在Android项目中使用外部libs时遇到问题。我正在尝试使用支持库v7和其他几个库。我将jar文件放在“libs”文件夹中,右键单击它们,然后单击addlibrary… 项目正在编译,但是当我创建并运行它时,会抛出一个NoClassDefFoundError 仅包含罐子是不够的 您应该将v7 compat作为库项目导入,当询问包名时,告诉IntelliJ使用android.support.v7.appcompat。请注意,清单的外观大致如下所示: <?xml version="1

我在Android项目中使用外部libs时遇到问题。我正在尝试使用支持库v7和其他几个库。我将jar文件放在“libs”文件夹中,右键单击它们,然后单击
addlibrary…

项目正在编译,但是当我创建并运行它时,会抛出一个NoClassDefFoundError


仅包含罐子是不够的

您应该将v7 compat作为库项目导入,当询问包名时,告诉IntelliJ使用
android.support.v7.appcompat
。请注意,清单的外观大致如下所示:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="android.support.v7.appcompat">
    <uses-sdk android:minSdkVersion="7"/>
    <application />
</manifest>


Offtopic备注:logcat的屏幕截图带有Darcula主题,看起来很棒,但是你可以帮其他用户一个忙,将stacktrace添加为文本,这样它就可以搜索了。或者至少在你的帖子中提到核心错误NoClassDefFoundError android.support.v7.appcompat.R$styleable。好的,这对appcompat有效,但是其他外部JAR呢?例如,如何包括Apache IOUTIL?其他不依赖于
res/
资产的外部JAR应该像您已经使用过的那样工作(只需右键单击,
addaslibrary…
。是的,我已经这样做了,所有内容都会编译,但由于某些原因,它们在运行时不可用。然后您必须转到
文件>项目结构…
并告诉IntelliJ导出一些依赖项。(我认为这是自动完成的。)你确定你的库没有其他依赖项吗?错误消息/堆栈跟踪是什么?你知道Android已经有Http库了吗?你可以看看。在那里你可以找到一个替代列表。Apache有很棒的Java SE和Java EE库,但对于安卓,它们通常会给你的APK文件增加很多权重。请确定使用ProGuard优化您的构建!