ActionBarSherlock + maven + eclipse:在工作区中找不到依赖项

我已经更新到最新版本的ADT插件,我遇到了这个问题 ,解决了更新m2e-android eclipse插件。 现在,我可以通过控制台编译我的项目,但不能用eclipse编译。 这是eclipse中pom.xml文件抛出的exception:

dependency=[com.actionbarsherlock:library:apklib:4.1.0:compile] not found in workspace

在以前版本的ADT / m2e-android中,我能够毫无问题地构建控制台和eclipse。

有谁知道如何解决这个问题? 也许我的pom.xml错了?

谢谢你的时间。


目前使用:

  • Eclipse经典3.7.2(Juno问题仍然存在)
  • ADT 20.0.3
  • m2e-android 0.42
  • android-maven-plugin 3.3.0
  • maven 3.0.4
  • m2e 1.1.0(作为m2e-android 0.42中的依赖项包含)

pom.xml中:

   4.0.0 com.jelies my-project 0.0.1-SNAPSHOT apk   android android 4.1_r2 provided    com.actionbarsherlock library 4.1.0 apklib    ${project.artifactId}   org.apache.maven.plugins maven-source-plugin 2.1.2   attach-sources verify  jar-no-fork      maven-compiler-plugin 2.4  1.6 1.6    com.jayway.maven.plugins.android.generation2 android-maven-plugin 3.3.0   16   avd-4.1  true true  true      eclipse    m2e.version     com.google.android support-v4 r7 provided      

编辑:

答案是对的。 让ABS库项目在我的工作区中进行了mavenized,错误消失了! 但是,出现了另一个问题:ABS传递依赖项被添加到我的项目中,导致eclipse无法启动应用程序。 这是您可以在此处遵循的已知问题。

Solutions Collecting From Web of "ActionBarSherlock + maven + eclipse:在工作区中找不到依赖项"

从Android 0.4.2开始,您现在需要在Eclipse工作区中对Android库项目进行编组,以便m2e-android成功检测它们。 可以在此处findActionBarSherlock的POM:

https://github.com/JakeWharton/ActionBarSherlock/blob/master/library/pom.xml#

注意: m2e-android是测试版软件,因此可能会在版本之间发生可能影响function的更改。

对于那些不知道什么是“MAVENIZED”意味着将一个简单项目转换为Maven项目的人。

在Eclipse中,右键单击项目,Configure – > Convert to Maven Project

只有在通过配置文件使用eclipse时,才能将actionbarsherlock依赖项包含在jar文件中

  m2e  m2e.version    com.actionbarsherlock actionbarsherlock ${abs.version} jar    

并且不需要将整个actionbarsherlock包含在eclipse中作为项目

将其作为依赖项添加到父pom.xml文件中:

  com.actionbarsherlock actionbarsherlock apklib 4.2.0  

以下几行到您的项目pom.xml:

  com.actionbarsherlock actionbarsherlock 4.2.0  

我写了关于mvn + eclipse + action bar sherlock集成的详细教程http://v.zasadnyy.com/blog/abs-maven-eclipse-integration/

希望它会有所帮助。