使用dx的各种悲剧错误,一直一直搞啊搞,搞了三天之后才把这么个小错误搞定

做程序员不易浮躁啊,还有就是要真的是要锲而不舍啊!!!!!!!

错误一:

UNEXPECTED TOP-LEVEL EXCEPTION:
java.lang.RuntimeException: abc.class: file not foundat com.android.dx.util.FileUtils.readFile(FileUtils.java:55)at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.j
ava:134)at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java
:109)at com.android.dx.command.dexer.Main.processOne(Main.java:422)at com.android.dx.command.dexer.Main.processAllFiles(Main.java:333)at com.android.dx.command.dexer.Main.run(Main.java:209)at com.android.dx.command.dexer.Main.main(Main.java:174)at com.android.dx.command.Main.main(Main.java:91)
1 error; aborting

当你出现这个运行时错误的话,那就是你需要编译的文件需要和你安卓的platform-tool这个文件夹中的内容放在一起

你要做的就是把你的文件放在和dexdump.exe文件和dx.bat放在同一个目录下

这个样子就可以编译通过成功生成dex文件了

错误二:

trouble processing:
bad class file magic (cafebabe) or version (0033.0000)
...while parsing Hello.class
...while processing Hello.class
1 warning
no classfiles specified

出现这个错误的原因是因为jdk的版本不对,我之前用的是JDK1.7但是不知道为什么他编译之后生成的JDK的版本会低于jdk1.6真是让我百思不得其解?

也不知道这个代码是怎么写的

之后我上网查了一下,我把JDK1.7换成了JDK1.6,可是还是不行,出现了相同的提示,结果展示如下

这个时候解决的办法有一个:

强制转换成1.6版本的class

使用的到的命令就是javac -source 1.6 -target 1.6  ****.java(****代表了你的java文件名称)

具体步骤演示如下:

1.编写一个java文件

2.使用javac命令:javac -source 1.6 -target 1.6 ******.java  注意你编写的必须是在你的android的platform-tools文件目录下

3.使用dx命令   dx  --dex --output =*****.dex  *****.class

dexdump.exe  -d *****.dex

这个时候我们来看一下结果

D:\Android\android-sdk\platform-tools>dx --dex --output=abc.dex abc.classD:\Android\android-sdk\platform-tools>dexdump.exe -d abc.dex
Processing 'abc.dex'...
Opened 'abc.dex', DEX version '035'
Class #0            -Class descriptor  : 'Labc;'Access flags      : 0x0001 (PUBLIC)Superclass        : 'Ljava/lang/Object;'Interfaces        -Static fields     -Instance fields   -Direct methods    -#0              : (in Labc;)name          : '<init>'type          : '()V'access        : 0x10001 (PUBLIC CONSTRUCTOR)code          -registers     : 1ins           : 1outs          : 1insns size    : 4 16-bit code units
000160:                                        |[000160] abc.<init>:()V
000170: 7010 0500 0000                         |0000: invoke-direct {v0}, Ljava/
lang/Object;.<init>:()V // method@0005
000176: 0e00                                   |0003: return-voidcatches       : (none)positions     :0x0000 line=2locals        :0x0000 - 0x0004 reg=0 this Labc;#1              : (in Labc;)name          : 'main'type          : '([Ljava/lang/String;)V'access        : 0x0009 (PUBLIC STATIC)code          -registers     : 3ins           : 1outs          : 2insns size    : 30 16-bit code units
000178:                                        |[000178] abc.main:([Ljava/lang/S
tring;)V
000188: 1250                                   |0000: const/4 v0, #int 5 // #5
00018a: 1271                                   |0001: const/4 v1, #int 7 // #7
00018c: 2311 0600                              |0002: new-array v1, v1, [I // ty
pe@0006
000190: 2601 0800 0000                         |0004: fill-array-data v1, 000000
0c // +00000008
000196: 7120 0200 1000                         |0007: invoke-static {v0, v1}, La
bc;.test:(I[I)V // method@0002
00019c: 0e00                                   |000a: return-void
00019e: 0000                                   |000b: nop // spacer
0001a0: 0003 0400 0700 0000 0100 0000 0100 ... |000c: array-data (18 units)catches       : (none)positions     :0x0000 line=180x000a line=190x000b line=18locals        :#2              : (in Labc;)name          : 'test'type          : '(I[I)V'access        : 0x0089 (PUBLIC STATIC VARARGS)code          -registers     : 6ins           : 2outs          : 2insns size    : 20 16-bit code units
0001c4:                                        |[0001c4] abc.test:(I[I)V
0001d4: 2151                                   |0000: array-length v1, v5
0001d6: 1200                                   |0001: const/4 v0, #int 0 // #0
0001d8: 3510 0c00                              |0002: if-ge v0, v1, 000e // +000
c
0001dc: 4402 0500                              |0004: aget v2, v5, v0
0001e0: 6203 0000                              |0006: sget-object v3, Ljava/lang
/System;.out:Ljava/io/PrintStream; // field@0000
0001e4: 6e20 0300 2300                         |0008: invoke-virtual {v3, v2}, L
java/io/PrintStream;.print:(I)V // method@0003
0001ea: d800 0001                              |000b: add-int/lit8 v0, v0, #int
1 // #01
0001ee: 28f5                                   |000d: goto 0002 // -000b
0001f0: 6200 0000                              |000e: sget-object v0, Ljava/lang
/System;.out:Ljava/io/PrintStream; // field@0000
0001f4: 6e20 0400 4000                         |0010: invoke-virtual {v0, v4}, L
java/io/PrintStream;.println:(I)V // method@0004
0001fa: 0e00                                   |0013: return-voidcatches       : (none)positions     :0x0000 line=100x0006 line=120x000b line=100x000e line=140x0013 line=15locals        :Virtual methods   -source_file_idx   : 12 (abc.java)

如果你有任何的问题,可以给我留言,我会及时回复!^^

之前走了好多弯路希望能帮上大家!^^

dx使用出现的错误总结相关推荐

  1. c语言除法结果溢出怎么办,关于C ++:导致除法溢出错误(x86)

    我有一些关于x86或x86_64体系结构上的划分溢出错误的问题.最近,我一直在阅读有关整数溢出的知识.通常,当算术运算导致整数溢出时,将置位FLAGS寄存器中的进位或溢出位.但是很显然,根据本文所述, ...

  2. assembly x86(nasm)串比较

    预留字符串口令,输入口令串与预留密码串比较.若匹配则显示"MATCH!CONGRATULATION",否则显示"NOMATCH!",并让用户重新输入,程序能对口 ...

  3. 《IBM-PC汇编语言程序设计》(第2版)【沈美明 温冬婵】——第十一章——自编解析与答案

    11.1 写出文件代号式磁盘存取操作的错误代码: (1) 非法文件代号 (2) 路径未发现 (3) 写保护磁盘 答:错误代码为: (1) 06 (2) 03 (4) 19 11.2 使用3CH功能建立 ...

  4. 《IBM-PC汇编语言程序设计》(第2版)【沈美明 温冬婵】答案

    内容修订.解析.扩展: <IBM-PC汇编语言程序设计>(第2版)[沈美明 温冬婵]--自编解析与答案 第 一 章. 习 题 1.1 用降幂法和除法将下列十进制数转换为二进制数和十六进制数 ...

  5. Android应用开发编译框架流程与IDE及Gradle概要

    1 背景 建议阅读本文之前先阅读<Android Studio入门到精通>和<Groovy脚本基础全攻略>及<Gradle脚本基础全攻略>三篇博客作为背景知识,这样 ...

  6. [转载]汇编语言程序设计第二版答案  沈美明

    原文地址:汇编语言程序设计第二版答案  沈美明作者:相约爱情海 file:///C|/Users/CaoFan/Desktop/IBM-PC汇编语言程序设计(第二版)答案.txt[2010/4/24 ...

  7. 多项式计算大模拟:csp202112-3登机牌条码

    题目描述 csp202112-3 题目分析 本题有两部分模拟,一部分是计算数据码字,一部分是计算校验码字. 数据码字的计算比较简单,写个简单的状态机生成一系列数字之后两两组合即可获得数据区.测试样例也 ...

  8. 南邮 | 汇编实验 3.17:用户键入“通行字”,显示欢迎界面

    题目 程序执行后,给出简单明了的操作提示,请用户键入"通行字",按回车表示通行字键入结束.只有当用户键入的字符串和程序内定的字符串相同时,显示欢迎界面,程序返回DOS,否则请用户重 ...

  9. 微型计算机原理存储器,微机原理存储器扩展详情解析

    存储器(Memory)是计算机系统中的记忆设备,用来存放程序和数据.有了存储器,计算机才有记忆功能,才能保证正常工作.按存储介质分可分为半导体存储器和磁表面存储器.按存储器的读写功能分可分为只读存储器 ...

最新文章

  1. Android开发环境搭建及常见问题解决方法
  2. android崩溃无日志,Android 收集Crash日志----UncaughtExceptionHandler
  3. 95后实习生的远程办公体验(asp.net mvc\C#技术栈)
  4. php数据库根据相似度排序,php数组字段相似度排序
  5. 计算机设计大赛安徽农业大学经济技术学院,信息与计算机系开展“学习‘学生违纪处分办法’”主题班会活动总结...
  6. AD10操作技巧及参数
  7. JavaScript入门教程
  8. 电商后台管理系统项目实例
  9. 《JavaScript菜鸟教程》学习
  10. 简述java重载和重写的相同点_方法的重载和重写的异同之处
  11. excel 数组公式
  12. 【Running latest Apollo with SVL Simulator 使用 SVL 模拟器运行最新的 Apollo】
  13. 惊!揭秘AI人工智能机器人自动写诗的奥秘!
  14. MMDetection 基准测试 和 Model Zoo | 三
  15. (转)纵观国内外证券公司IT发展史
  16. 一次ES性能优化,我发现了搞大数据的真相……
  17. SAP 如何强制踢出用户登录
  18. 【多媒体封装格式详解】---ASF(WMV/WMA)【1】
  19. 基于wifi控制的51单片机温度报警器
  20. 【Odin插件】Unity补完计划

热门文章

  1. DevTools 实现原理与性能分析实战
  2. 深入剖析 RocketMQ 源码 - 消息存储模块
  3. Swagger3.0 天天刷屏,真的香吗?
  4. 又踩到Dubbo的坑,但是这次我笑不出来
  5. 你真的看懂招聘要求了?
  6. 爸爸又给Spring MVC生了个弟弟叫Spring WebFlux
  7. 这可能是2018年IT界规模最大的裁员事件了
  8. 人生必须知道的十个为什么
  9. 从搞笑到高效,构建敏捷团队的基础原则
  10. Scrum敏捷开发工具实力推荐