繁体   English   中英

将项目导入Android Studio有关ActionBarSherlock的问题

[英]Problems importing project into Android Studio regarding ActionBarSherlock

是否有其他人在使用ActionBarSherlock导入项目时遇到问题? 我总共有100个错误和17个警告。 这在Eclipse完美运行。 我按照步骤创建了Gradle构建文件 在我尝试构建项目之前没有导入错误。

我也尝试重新下载ABS新鲜并替换到我的项目中。

ABS和IntelliJ是否存在已知问题? (当然Android Studio现在基于哪个)

以下是我看到的一些错误:

        java: ...
        Workspace/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockFragment.java:4: cannot find symbol
        symbol  : class Fragment
        location: package android.support.v4.app

        java: ...  Workspace/ActionBarSherlock/src/com/actionbarsherlock/app/SherlockListFragment.java:4: cannot find symbol
        symbol  : class ListFragment
        location: package android.support.v4.app

        java: ...
        Workspace/ActionBarSherlock/src/com/actionbarsherlock/widget/SuggestionsAdapter.java:33:
        package android.support.v4.widget does not exist

任何帮助真的很感激

编辑:似乎使用标准IntelliJ IDEA没有问题。 许多在线指南用于设置ABS。 正如杰克所说,他实际上是在开发IntelliJ中的东西

以下是一个示例指南: http//android-wtf.com/2012/09/how-to-configure-actionbarsherlock-with-intellij-idea/

但是,我仍然不确定为什么它不适用于Android Studio

Edit2:下面的答案中的解决方案。 简而言之:(我下载了abs最新版本,解压缩,从我的项目中删除了旧版本的abs ,然后将file > import module...导入actionbarsherlock目录到我现有的项目中actionbarsherlock ,在我的特殊情况下,我有一个问题junit编译错误,需要删除\\ test \\ junit \\)

似乎有很多关于将模块导入Android Studio的一般问题,而不仅仅是ActionBarSherlock ,这个答案也可能解决这些问题。 (但是与junit有关的最后步骤特别适用于abs

以下步骤使我可以运行ActionBarSherlock而不会出现任何问题。

1)在这里下载最新的ABS: http//actionbarsherlock.com/

2)提取ABS你应该有一个名为“actionbarsherlock”的目录。 将其复制到Android Studio工作区。 并重命名为ActionBarSherlock (changed casing) - >我现在将我的Android Studio项目放在\\*documents*\\Android Workspace\\而不是\\Eclipse Workspace\\

所以你现在应该有类似的东西:

\\*documents*\\Android Workspace\\ActionBarSherlock\\

与您的主要项目一起可能:

\\*documents*\\Android Workspace\\TestProject\\

3)打开Android Studio加载您的TestProject然后转到File> Import Module.. 现在导航到\\*documents*\\Android Workspace\\ActionBarSherlock\\下的\\*documents*\\Android Workspace\\ActionBarSherlock\\单击Ok,然后一直到完成。 它将询问您是否要设置新模块的依赖性(或至少我的确定)单击确定

4)此时编译时我在\\ActionBarSherlock\\test\\抱怨Junit时遇到错误。 我只是在项目视图下从我的ABS模块中删除了\\Test\\目录。 Right click \\test\\ > Delete... 您还可以包含junit jar文件,但我认为没必要

5)您现在应该能够无错误地编译

希望这有助于某人。

基本上,我需要重新下载一个完全新的ABS,删除我的旧项目的ABS(可能很旧)然后导入模块...

这对我有用..

首先,按照wired00提供的答案

我从这里做了一些改变。

我通过Eclipse中的Generate Gradle构建文件在ActionBarSherlock库项目中创建了一个build.gradle文件。

编辑build.gradle(对于ActioBarSherlock库项目),在依赖项中添加一行{} compile files('libs/android-support-v4.jar')

编辑build.gradle(对于我的项目),删除compile files('libs/android-support-v4.jar')并添加compile project(':abs') abs应该是ActionBarSherlock库项目名称。

编辑settings.gradle,add ,':abs'

删除除ActionBarSherlock库项目中的文件之外的android-support-v4.jar文件

我遇到了类似的问题,但是由于一个单独的问题,我无法下载最新的ActionBarShelock来修复问题,如有线电视所描述的那样。

如果您需要坚持使用现有的ABS版本,请查看这是否适用于您:

  1. 单击文件 - >项目结构。
  2. 您应该在模块列表中看到“ActionBarSherlock”,单击它。
  3. 单击“依赖关系”选项卡,很可能你没有android支持库v4。
  4. 单击底部的“+”按钮,并添加android-support-v4作为依赖项。 如果您从Eclipse导入项目,则Android Studio可能已将支持JAR文件作为库导入,您可以直接使用它。 否则,您可能需要使用“jars或目录”选项并从目录中选择支持jar文件。
  5. 如果您的主模块或其他模块也使用支持库,则可能需要将“编译”设置更改为“已提供”,如果出现“已添加DEX”错误。
  6. 你现在应该能够编译你的ABS mobule了。 如果你得到'hamcrest'或'junit'编译错误,你可以删除你在ABS项目中提到的'test'文件夹。

我也遇到了同样的问题。 我甚至按照类似于导入ABS库的步骤操作。 但我仍然得到同样的错误。 最后我解决了这个问题。 解决方案:执行类似导入ABS库的步骤后,

  1. 重新编译您的项目(右键单击您的项目,然后单击'编译模块'YourApp“')
  2. 重新编译库项目(右键单击库项目,然后单击'编译模块'库“')

而已..

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM