eclipse adt 17和libs文件夹

时间:2012-04-05 10:32:03

标签: android eclipse adt

好的,所以我更新到eclipse adt到版本17,我收到此错误

04-05 12:28:55.810: E/AndroidRuntime(5470): FATAL EXCEPTION: main
04-05 12:28:55.810: E/AndroidRuntime(5470): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.galeola.agentis/com.galeola.agentis.activity.GestionaleActivity}: java.lang.ClassNotFoundException: com.galeola.agentis.activity.GestionaleActivity in loader dalvik.system.PathClassLoader[/system/framework/com.google.android.maps.jar:/data/app/com.galeola.agentis-1.apk]
04-05 12:28:55.810: E/AndroidRuntime(5470):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1742)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1834)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at android.app.ActivityThread.access$500(ActivityThread.java:122)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1027)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at android.os.Handler.dispatchMessage(Handler.java:99)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at android.os.Looper.loop(Looper.java:132)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at android.app.ActivityThread.main(ActivityThread.java:4126)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at java.lang.reflect.Method.invokeNative(Native Method)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at java.lang.reflect.Method.invoke(Method.java:491)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:844)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:602)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at dalvik.system.NativeStart.main(Native Method)
04-05 12:28:55.810: E/AndroidRuntime(5470): Caused by: java.lang.ClassNotFoundException: com.galeola.agentis.activity.GestionaleActivity in loader dalvik.system.PathClassLoader[/system/framework/com.google.android.maps.jar:/data/app/com.galeola.agentis-1.apk]
04-05 12:28:55.810: E/AndroidRuntime(5470):     at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:251)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at java.lang.ClassLoader.loadClass(ClassLoader.java:540)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at java.lang.ClassLoader.loadClass(ClassLoader.java:500)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at android.app.Instrumentation.newActivity(Instrumentation.java:1022)
04-05 12:28:55.810: E/AndroidRuntime(5470):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1733)
04-05 12:28:55.810: E/AndroidRuntime(5470):     ... 11 more
然而,如果我将我的库移动到/ libs我可以启动应用程序,但是/ libs中的库javadoc和javasources停止工作,而如果它们不在/ libs javadoc和javasource工作,那么我不明白这是为什么。

5 个答案:

答案 0 :(得分:1)

看看Xavier Ducrohet的答案here。但基本上,使用adt17,您无法将Javadoc附加到依赖项。

答案 1 :(得分:1)

对于非库项目:

正如原始问题中所提到的,this android issue中的注释8修复了构建,运行时和javadoc问题,尽管是通过kludge。

不幸的是,Ant版本被破坏了。要修复使用Proguard的Ant构建,请按照注释8和ant.properties中的描述将jar移动到lib:

jar.libs.dir=lib

和proguard.cfg添加:

-injars lib

第二次添加是修复运行时崩溃所必需的。

我没有对使用检测或emma任务的项目进行测试,但对于需要Eclipse和Ant构建的非库项目来说似乎没问题。

答案 2 :(得分:0)

也许ADK更新搞砸了你项目的构建路径。尝试删除JAR并将其再次添加到libs文件夹,将其添加到构建路径并执行清理项目。

检查我的问题一次 - New android SDK 17 issue

答案 3 :(得分:0)

好的,这就是错误,解决方案是评论#8 http://code.google.com/p/android/issues/detail?id=27490#c8

答案 4 :(得分:0)

嗯,经过数小时的研究,我发现了一个简单的解决方案。

  • 点击您的Android项目
  • 选择属性
  • 选择Java Build
  • 路径选择订单和导出
  • 检查所有参考文件

多数民众赞成!