使用ActionBarSherlock&ViewPagerIndicator同步方式将无法编译(Us

2019-06-23 18:48发布

当在同一时间,我提示以下错误:使用ActionBarSherlock和ViewPagerIndicator; 从我读过的东西 - 这是使由于两个冲突/重复库。

一个解决办法是让ABS依靠VPI(或其他方式,我都尝试),但是即使这样干净后,重建还是给了我同样的错误。 现在我只是在两个单独的项目,所以我可以让我的工作做完的工作 - 但我想他们明明结合公顷。 帮助将不胜感激!

[2012-04-19 00:39:20 - MashableReader] Dx 
UNEXPECTED TOP-LEVEL EXCEPTION:
java.lang.IllegalArgumentException: already added: Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat;
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.dex.file.DexFile.add(DexFile.java:163)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.command.dexer.Main.processClass(Main.java:486)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.command.dexer.Main.processFileBytes(Main.java:455)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.command.dexer.Main.access$400(Main.java:67)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:394)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:245)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:131)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:109)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.command.dexer.Main.processOne(Main.java:418)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.command.dexer.Main.processAllFiles(Main.java:329)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.dx.command.dexer.Main.run(Main.java:206)
[2012-04-19 00:39:20 - MashableReader] Dx   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
[2012-04-19 00:39:20 - MashableReader] Dx   at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
[2012-04-19 00:39:20 - MashableReader] Dx   at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
[2012-04-19 00:39:20 - MashableReader] Dx   at java.lang.reflect.Method.invoke(Unknown Source)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.ide.eclipse.adt.internal.build.DexWrapper.run(DexWrapper.java:180)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.ide.eclipse.adt.internal.build.BuildHelper.executeDx(BuildHelper.java:702)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.ide.eclipse.adt.internal.build.builders.PostCompilerBuilder.build(PostCompilerBuilder.java:646)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:728)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:199)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:321)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:396)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.core.internal.resources.Project$1.run(Project.java:618)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.core.internal.resources.Project.internalBuild(Project.java:597)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.core.internal.resources.Project.build(Project.java:124)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.ide.eclipse.adt.internal.project.ProjectHelper.doFullIncrementalDebugBuild(ProjectHelper.java:1000)
[2012-04-19 00:39:20 - MashableReader] Dx   at com.android.ide.eclipse.adt.internal.launch.LaunchConfigDelegate.launch(LaunchConfigDelegate.java:147)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:854)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:703)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:928)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlugin.java:1132)
[2012-04-19 00:39:20 - MashableReader] Dx   at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)
[2012-04-19 00:39:20 - MashableReader] Dx 1 error; aborting
[2012-04-19 00:39:20 - MashableReader] Conversion to Dalvik format failed with error 1

使用答案UPDATE:好-如下面的答案得在,这个问题在Eclipse ADT依赖解析。 基本上我的解决办法是让ViewPagerIndicator依靠ActionBarSherlock(意思是,在VPI属性,我添加了ABS的项目,就像您的一个常规项目 - 对于那些你谁可能会向后思考)。 我仍然有与问题,当我得到我的代码中的错误说法的一些方法不能被覆盖 - 这部分是因为你有错误的进口,所以删除所有进口和CRTL + SHIFT + O(快速输入分辨率)并选择所有从android.support.v4包的人,你应该对所有的好。 但后来我还是跑进了原来的Dalvik问题 - 解决这个问题,我不得不去到实际的文件夹,我的VPI库是从/ libs文件夹删除支持jar从抓住它阻止它 - 那么所有的设置:)

Answer 1:

是的,问题是ActionBarSherlock和ViewPagerIndicator都使用库/ Android的支持 - v4.jar依赖。

最简单的办法是升级你的工作站对最新的Android SDK和Eclipse ADT插件版本(至少R17),因为这种情况会自动由SDK现在处理(因为R17),看到R17的changelog :

相关性解析

当一个项目引用都需要相同的jar文件中的两个库项目,构建系统具有检测和解决重复。

还要注意,由于R17,libs文件夹下的所有jar文件会自动填充到项目的类路径,你没有需要手动将它们添加到项目的构建路径了,在也提到了R17的changelog :

项目源文件夹,以及图书馆项目和JAR文件依赖性。 随着需要的不是增加库项目中project.properties依赖没有其他的设置,项目的类路径自动填充:

  • 该项目库的内容/ *。JAR
  • 图书馆项目的输出。
  • 图书馆项目库/ *。JAR

希望这可以帮助。



Answer 2:

我在ADT,SDK等的最新版本,它仍然有这个问题 - 它似乎仍不知道哪些支持库使用从相关库等。

TJ的解决方案的工作,但我用另一种方法。

我的解决办法如下:

  1. 走进每个库项目和主要应用程序项目引用库和删除库/ Android的支持,v4.jar参考
  2. 回去到每个项目,并从文件系统拖了Android的支持 - v4.jar(我的Mac,我的SDK保存在我的文档文件夹:用户//文件/安卓/ Android的SDK-mac_x86 /演员/安卓/兼容性/v4/android-support-v4.jar)到库文件夹,并选择链接到罐子里而不是复制它们到项目中。
  3. 现在,我所有的项目中引用同一个.jar文件在我的文件系统,如果我在将来更新支持库(通过Android SDK管理器),将.jar将被更新,并反过来项目将在最新的罐子拉。

所以更新支持库不应该破坏任何东西,让你使用最新的版本。



文章来源: Using ActionBarSherlock & ViewPagerIndicator Synchronously Will Not Compile