将项目导入到Android Studio中有关ActionBarSherlock的问题
是否有其他人有导入与ActionBarSherlock
项目的问题? 我总共有100个错误和17个警告。 这在Eclipse
完美工作。 我遵循这些步骤来创build一个Gradle构build文件 。 直到我试图build立项目,没有import错误。
我也尝试重新下载ABS新鲜和replace到我的项目。
是否有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中工作
编辑2:解答在下面的答案。 总之:(我下载了abs
最新版本,解压缩后,从我的项目中删除了旧版本的abs
,然后file > import module...
把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\
点击确定,接下来完成。 它会问你是否要设置一个依赖的新模块(或者至less是我的)单击确定
4)在编译的时候,我在\ActionBarSherlock\test\
抱怨关于Junit
。 我只是在项目视图下从我的ABS模块中删除了\Test\
目录。 Right click \test\ > Delete...
你也可以包括junit的jar文件,但我不认为它是必要的
5)你现在应该可以编译没有错误
希望能帮助别人。
基本上,我需要重新下载一个完全新的ABS,删除我的旧项目的ABS(这可能是相当老),然后导入模块…
这对我有用..
首先,接着由wired00提供的答案
我从这里做了一些改变。
我通过从Eclipse生成Gradle构build文件,在ActionBarSherlock库项目中创build了一个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,添加,':abs'
删除除ActionBarSherlock库项目之外的android-support-v4.jar文件
我遇到了类似的问题,但是由于单独的问题,我无法下载最新的ActionBarShelock来解决wired00描述的问题。
如果您需要坚持使用您现有的ABS版本,请查看是否适合您:
- 点击文件 – >项目结构。
- 你应该在模块列表中看到“ActionBarSherlock”,点击它。
- 点击“依赖”选项卡,很可能你没有安卓支持库v4。
- 点击底部的“+”button,添加android-support-v4作为依赖项。 如果您从Eclipse导入项目,Android Studio可能已经将支持JAR文件导入为库,您可以直接使用它。 否则,您可能需要使用“jar或目录”选项并从目录中select支持jar文件。
- 如果您的主模块或其他模块也在使用支持库,则可能需要将“编译”设置更改为“提供”,如果您收到“DEX已添加”错误。
- 你现在应该可以编译你的ABSanimation。 如果您收到“hamcrest”或“junit”编译错误,您可以将ABS项目中的'test'文件夹删除为wired00。
我也面临同样的问题。 我甚至按照类似于导入ABS库的步骤。 但是我仍然得到同样的错误。 最后我解决了这个问题。 解决scheme:按照与导入ABS库相似的步骤,
- 重新编译你的项目(右键点击你的项目并点击“编译模块”YourApp“”)
- 重新编译库项目(右键单击库项目并单击“编译模块”库)
而已..