Android 未能在IntelliJ IDEA中生成ActionBarSherlock

Android 未能在IntelliJ IDEA中生成ActionBarSherlock,android,intellij-idea,actionbarsherlock,Android,Intellij Idea,Actionbarsherlock,我已将库模块ActionBarSherlock包含到我的项目中。 两个项目的最小SDK版本为10,目标SDK为-13 但当我尝试构建项目时,我会遇到很多错误,比如: [Library] /Users/rankor777/src/ActionBarSherlock/library/res/values-v14/abs__styles.xml:4: error: Error retrieving parent for item: No resource found that matches the

我已将库模块ActionBarSherlock包含到我的项目中。 两个项目的最小SDK版本为10,目标SDK为-13

但当我尝试构建项目时,我会遇到很多错误,比如:

[Library] /Users/rankor777/src/ActionBarSherlock/library/res/values-v14/abs__styles.xml:4: error: Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Holo.ActionBar'.

为什么?

如果我没记错的话,这个问题是由Java编译器设置引起的。打开应用程序设置对话框,选择编译器->Java编译器,并确保已选择“Javac进程中(仅限Java6+)”作为要使用的编译器


仅供参考Google建议使用最新的SDK进行构建,因此您可能应该将目标SDK增加到16个。

您需要升级您的目标SDK。(此答案之前的版本错误地说“您需要升级min sdk,但这是不正确的,下面粘贴的ABS文档证明了这一点)

即使它打算在旧版本的Android平台上工作,您仍然必须针对4.0(或更新版本)的Android SDK编译ActionBarSherlock

请点击此处:

要求

由于它在Ice上使用了本机操作栏及其相关类 奶油三明治,图书馆要求它和你的项目都是 使用Android 4.0或更新版本编译。该项目还要求 在编辑器和任何构建系统中都使用JDK1.6进行编译 您可能正在使用的

由于该库是官方支持库的扩展,您可以 您的项目还必须引用android-support-v4.jar

这里也有:

该库本身必须基于Android 4.0(API级别14)构建。 您的项目应该使用最新版本的SDK作为构建工具 只要是4.0或更新版本,就有可能

需要针对API级别11或更高版本,因为这将导致Android 在较新设备上运行时自动添加本机操作栏。 因为您将根据新API进行编译,但您的应用程序可能会 在使用旧版本Android的设备上运行必须格外小心 避免使用或正确检查并调用任何方法 这是在您的最低SDK版本之后引入的


转到文件->项目结构->模块->应用->依赖项。单击左下角的+并选择模块依赖项。选择ActionBarSherlock

如果没有,请确保它是一个库模块-展开ActionBarSherlock模块并单击Android,然后检查is library项目。

  • 下载ActionBarSherlock zip文件并将其解压缩到应用程序模块旁边,该模块将使用ActionBarSherlock。 从IntelliJ IDEA中选择文件->导入模块选择ActionBarSherlock文件夹下的库文件夹,并将其作为新模块导入。它将作为Android库模块导入
  • 打开ActionBarSherlock库模块的模块设置并导出android-support-v4.jar依赖项

  • 打开应用程序的模块设置,该设置将使用ActionBarSherlock并添加新的模块依赖项

  • 从模块列表中选择ActionBarSherlock


PS:internet上的一些教程指导您将android-support-v4.jar添加到应用程序的libs文件夹中,并作为库依赖项添加。由于ActionBarSherlock已经包含它,您不必这样做,只需将它从ActionBarSherlock导出即可。如果您还将android-support-v4.jar作为库添加到您自己的模块中,您可能无法预料顶级异常。

这可能会有所帮助:编译器是java 1.6(1.6.0_33)。这是SDK,而不是编译器。按照我说的说明,看看你有哪个编译器。记住,它的应用程序设置(扳手图标),而不是项目设置(3个蓝框).ActionBarSherlock需要至少14个目标SDK。最小SDK可以更小,否则就没有意义了!无论如何,这不是我的问题。你是对的-我的第一句话应该说“你需要碰撞你的目标SDK”“。从零开始并遵循教程解决了我的问题。我不知道如何添加模块依赖项。