如何解决ADT17下Androidmaven打包第三方jar包包NoClassDefFoundError的错误

转自:本人已试过第二种解决方法可行!!

在升级了我的Android SDK和ADT到版本17后我又遇到了一个大问题:)

在使用了maven打包第三方jar包包的工程中,我仍然能正常编译但只要在手机上一運行,程序就会直接崩溃错误信息如下:

于是我在Google+上问了Xavier Ducrohet和Tor Norbye(两者都是ADT插件的开发人员)关于此问题的原因,他们给了我这个页面链接()解释了如何去解决此问题,但解释得不是非常清晰(至少对我是这样)

关于这个问题,下面我截的这几个图能更容易地说清楚:

從左到右三个图分别是:
1.我的ADT16版的工程(三个截图的细节图标有些不一样因为第一个是Windows的Eclipse下截的图,而另两个是在Mac的Eclipse下截的)
2.我修复前嘚ADT17版工程
3.我修复后的ADT17版工程


1.蓝色方框中的内容变化是由新版补丁引起的(后面详细说明)
2.红色方框的内容变化,是我做的修复工作的结果

我所做的修复工作如下:

导致此问题的原因是新版的ADT管理JAR包的方式发生成变化,旧版支持两种不同的JAR包引用(一是Android工程的库另一个昰标准的库),新版则把这两者合并到Android Dependencies下了

另外,新增加的annotations.jar提供了新的优化提示功能(更新信息请参阅)

除了这个小问题新版的ADT17看起來很不错,我也很喜欢新的优化检查功能


开发团队DroidUX找到另一个解决此问题的办法,我没有亲自测试但看起来应该也行得通,内容如下:

下面是问题的解决办法:

如果你引用了不在libs目录下的maven打包第三方jar包文件比如你用了“classpath”变量,你可以通过导出引用来解决ADT17下报NoClassDefFoundError错误的問题

转自:本人已试过第二种解决方法可行!!

在升级了我的Android SDK和ADT到版本17后我又遇到了一个大问题:)

在使用了maven打包第三方jar包包的工程中,我仍然能正常编译但只要在手机上一運行,程序就会直接崩溃错误信息如下:

于是我在Google+上问了Xavier Ducrohet和Tor Norbye(两者都是ADT插件的开发人员)关于此问题的原因,他们给了我这个页面链接()解释了如何去解决此问题,但解释得不是非常清晰(至少对我是这样)

关于这个问题,下面我截的这几个图能更容易地说清楚:

從左到右三个图分别是:
1.我的ADT16版的工程(三个截图的细节图标有些不一样因为第一个是Windows的Eclipse下截的图,而另两个是在Mac的Eclipse下截的)
2.我修复前嘚ADT17版工程
3.我修复后的ADT17版工程


1.蓝色方框中的内容变化是由新版补丁引起的(后面详细说明)
2.红色方框的内容变化,是我做的修复工作的结果

我所做的修复工作如下:

导致此问题的原因是新版的ADT管理JAR包的方式发生成变化,旧版支持两种不同的JAR包引用(一是Android工程的库另一个昰标准的库),新版则把这两者合并到Android Dependencies下了

另外,新增加的annotations.jar提供了新的优化提示功能(更新信息请参阅)

除了这个小问题新版的ADT17看起來很不错,我也很喜欢新的优化检查功能


开发团队DroidUX找到另一个解决此问题的办法,我没有亲自测试但看起来应该也行得通,内容如下:

下面是问题的解决办法:

如果你引用了不在libs目录下的maven打包第三方jar包文件比如你用了“classpath”变量,你可以通过导出引用来解决ADT17下报NoClassDefFoundError错误的問题

版权声明:本文为博主原创文章遵循

版权协议,转载请附上原文出处链接和本声明


  • “你的鼓励将是我创作的最大动力”

我要回帖

更多关于 android第三方jar包 的文章

 

随机推荐