4

我有一个新的 mac (Lion 10.7.3)。安装了 Eclipse 和 android sdk。从 SVN 检查了我的项目,尝试运行并得到了这个丑陋的异常:

05-20 12:17:21.175: E/AndroidRuntime(32499): FATAL EXCEPTION: main
05-20 12:17:21.175: E/AndroidRuntime(32499): java.lang.NoClassDefFoundError: com.urbanairship.UAirship
05-20 12:17:21.175: E/AndroidRuntime(32499):    at com.neo.ovs3.MyApp.onCreate(MyApp.java:16)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:969)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3292)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at android.app.ActivityThread.access$2200(ActivityThread.java:117)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:969)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at android.os.Handler.dispatchMessage(Handler.java:99)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at android.os.Looper.loop(Looper.java:130)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at android.app.ActivityThread.main(ActivityThread.java:3703)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at java.lang.reflect.Method.invokeNative(Native Method)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at java.lang.reflect.Method.invoke(Method.java:507)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
05-20 12:17:21.175: E/AndroidRuntime(32499):    at dalvik.system.NativeStart.main(Native Method)

尝试通过创建新项目、重新创建清单文件、更改 UA 库、配置构建路径以各种方式修复它。没有任何帮助。项目本身编译没有错误。

值得一提的是,在我以前的 Mac(和 PC)上,相同的项目在签出后立即运行。这意味着这不是项目问题。

有任何想法吗 ?

4

2 回答 2

1

Google 已经对他们处理使用最新 ADT 版本中库项目的项目的方式进行了一些更改。虽然这些更改是有福的,但在将旧 ADT 插件版本与新版本混合时会导致错误。

如果你在旧电脑上有一个旧的 ADT 插件并且你以这种方式提交它,它会导致错误......

如果是这样,我建议回到您的旧计算机并更新所有 Google 工具。确保项目运行良好并提交到 SVN。在新电脑上结帐,希望它能工作......

于 2012-05-20T10:14:58.477 回答
1

找到了解决方案!

这确实是由 ADT 更新引起的。

我刚刚创建了一个新的 android 项目,并注意到其结构与我之前的 SVN 项目不同。

之后,在 ADT 和 SDK 工具更新到 v17 之后,我关注了这篇文章Gson NoClassDefFoundError

并将旧文件复制到新项目中。最后一切正常。

我希望这会帮助有同样问题的人。

于 2012-05-21T08:54:34.927 回答