转换为Dalvik格式失败:无法执行dex SDK Tools 22.3

时间:2013-11-01 19:37:03

标签: android

多个dex文件定义Lcom / google / ads / AdRequest $ ErrorCode

最新的ADT,最新的SDK工具(22.3)。

我试过:

  1. 清洁/重建
  2. 更新Eclipse
  3. 删除bin和gen文件夹
  4. 重启Eclipse
  5. 使用Ant进行手动构建
  6. 加上其他一些东西
  7. 我的所有项目现在都以API lvl 19为目标。

    我不知道该怎么做。

    由于

7 个答案:

答案 0 :(得分:53)

多个dex文件错误只是告诉您包含来自不同来源的同一个类文件。因此,重新启动Eclipse或使用Ant构建将无济于事,因为您的项目设置无效。

由于您没有指定您正在使用的罐子,因此无法确定发生了什么。

然而,最新的Google Play图书馆包含广告,我的猜测是您包括显然包含相同课程的Admob和Google Play服务。在这种情况下,您应该迁移代码以使用Google Play服务广告并从项目中删除admob jar。

答案 1 :(得分:13)

*右键单击项目名称,然后选择构建路径。

*然后选择配置构建路径。

*从Java Build Path中选择Order and Export。

选项卡

*取消选中.jar库。

错误通常是由于库中的多样性造成的。

答案 2 :(得分:7)

你检查过你的xml文件了吗?我有同样的问题(它还没有解决),我忘了更改adView属性:

<com.google.ads.AdView
    android:id="@+id/adView"

<com.google.android.gms.ads.AdView
    android:id="@+id/adView"

然后你也应该抄袭你的

xmlns:ads="http://schemas.android.com/apk/lib/com.google.android.gms.ads"

(如果这是正确的话,不知道......)

编辑: 发现这个:

    <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:ads="http://schemas.android.com/apk/res-auto"
              android:orientation="vertical"
              android:layout_width="match_parent"
              android:layout_height="match_parent">
  <com.google.android.gms.ads.AdView android:id="@+id/adView"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
                         ads:adUnitId="MY_AD_UNIT_ID"
                         ads:adSize="BANNER"/>
</LinearLayout>

(资料来源:https://developers.google.com/mobile-ads-sdk/docs/admob/fundamentals

EDIT2:

好的,现在我解决了我的问题。我是个白痴...... 好吧,我在服务库中集成了AdMob SDK ...我删除了它,一切都很棒了!所以删除services_lib,下载它并再次导入,我想这应该工作。祝好运!

答案 3 :(得分:2)

从我的项目中删除“GoogleAdMobAdsSdk-6.4.1.jar”后工作正常。 不要忘记将Google Play服务作为库添加到您的应用中。 此致!

答案 4 :(得分:2)

这是因为Google Play服务中包含Google广告。 这就是你有多个dex错误的原因。

http://developer.android.com/reference/com/google/android/gms/ads/AdRequest.html

答案 5 :(得分:1)

如果您也在使用Google Play服务,则会发生冲突。

答案 6 :(得分:0)

Eclipse项目属性 - &gt; Java构建路径 - &gt;订单和导出

取消选中Android私有库。

不要在项目中使用google play service lib的jar文件和库项目。