【错误记录】记录 Android 命令行执行 Java 程序中出现的错误 ( dx 打包 PC 可执行文件报错 | dalvik 命令执行 kotlin 编译的 dex 文件报错 )
文章目录
- 前言
- 一、Android 命令行与 PC 可执行 JAR 文件不兼容
- 二、Android 命令行使用 dalvik 命令不能直接执行 Kotlin 编译的 dex 文件
前言
尝试在 Android 系统中执行 Java 程序 , 【开发环境】Android 命令行中执行 Java 程序 ( IntelliJ IDEA 中创建 Java / Kotlin 工程 | dx 打包 DEX 字节码文件 | dalvikvm 命令 ) , 出现的错误记录 ;
一、Android 命令行与 PC 可执行 JAR 文件不兼容
尝试将 【开发环境】Android 命令行中执行 Java 程序 ( IntelliJ IDEA 中创建 Java / Kotlin 工程 | dx 打包 DEX 字节码文件 | dalvikvm 命令 ) 三、编译在 PC 上可执行的 Java / Kotlin JAR 包 生成的 JAR 包打包成 dex 文件 , 打包过程中出错 ;
报错信息 :
D:\002_Project\003_Java_Work\workspace\AndroidShell\out\artifacts>dx --dex --output kotlin.dex AndroidShell_jar\AndroidShell.jarPARSE ERROR:
class name (kotlin/reflect/jvm/internal/impl/serialization/deserialization/builtins/BuiltInsResourceLoader) does not match path (META-INF/versions/9/kotlin/reflect/jvm/internal/impl/serialization/deserialization/builtins/BuiltInsResourceLoader.class)
...while parsing META-INF/versions/9/kotlin/reflect/jvm/internal/impl/serialization/deserialization/builtins/BuiltInsResourceLoader.class
1 error; aborting
D:\002_Project\003_Java_Work\workspace\AndroidShell\out\artifacts>
直接打包字节码文件是成功的 , 打包 PC 上的可执行文件失败 ;
二、Android 命令行使用 dalvik 命令不能直接执行 Kotlin 编译的 dex 文件
使用
dalvikvm -cp kotlin.dex StudentKt
命令 , 执行 Kotlin 编译的 dex 文件 , 报错如下 :
1|walleye:/data/system/debug/AndroidShell # dalvikvm -cp kotlin.dex StudentKt
Exception in thread "main" java.lang.NoClassDefFoundError: Failed resolution of: Lkotlin/jvm/internal/Intrinsics;at StudentKt.main(Unknown Source:2)
Caused by: java.lang.ClassNotFoundException: Didn't find class "kotlin.jvm.internal.Intrinsics" on path: DexPathList[[dex file "kotlin.dex"],nativeLibraryDirectories=[/system/lib64, /system/lib64]]at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)at java.lang.ClassLoader.loadClass(ClassLoader.java:379)at java.lang.ClassLoader.loadClass(ClassLoader.java:312)... 1 more
1|walleye:/data/system/debug/AndroidShell #
Java 代码编译的 Dex 文件可以执行 ;
【错误记录】记录 Android 命令行执行 Java 程序中出现的错误 ( dx 打包 PC 可执行文件报错 | dalvik 命令执行 kotlin 编译的 dex 文件报错 )相关推荐
- Windows命令行运行Java程序
如何在Windows命令行运行Java程序 准备工作 1.安装JDK 安装JDK(Java Development Kit Java开发工具包 又称SDK)Oracle公司JDK下载地址,直接下载,然 ...
- java命令行运行 package_使用命令行运行Java程序
很久没有试过用Java命令行来运行程序了.今天用的时候都感觉有点不太顺利了.所以特别记下来,以免后边什么时候又忘掉. 首先是将编写好的Java程序放在某一文件夹下边.(本文以D盘javabasecod ...
- 服务器运行程序 网络错误怎么办,网站出现:ldquo;/rdquo;应用程序中的服务器错误。该如何解决?_已解决 - 阿里巴巴生意经...
网站出现:"/"应用程序中的服务器错误.该如何解决? 未指定的错误 说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出 ...
- 如何用命令行写java程序_如何用java实现doc命令行
如何用java实现doc命令行, dir显示当前所有目录下的文件 cd 文件目录 进入到该目录 cd ..退到上级目录,一面是我写的代码,调试了. 不过有点小bug就是当你进去的是文件就会提示空指针异 ...
- 从命令行及java程序运行MyBatis Generator 1.3.x生成MyBatis3.x代码
为什么80%的码农都做不了架构师?>>> 近期因为项目需要,调研了myBatis 3.x的使用,当然,顺便也就研究了一下使用Generator来通过逆向工程生成pojo,map ...
- java 程序命令_命令行运行JAVA程序
如果出现找不到变量,核查环境变量是否配置好 可以运行javac java java -version看是否正常 注意要在对应的目录下 核查java文件里边的名字 class文件名是否与java文件名一 ...
- 如何在命令行运行java程序
1.先在命令行进入到保存java程序的文件夹下 进入方法: 1.按住win + R进入命令行 2.输入cmd,回车或点击确认 3.进入文件夹找到java文件所在地址 4.复制路径 5.命令行输入文件所 ...
- java中错误的源文件_如果我的Java源文件中存在语法错误,为什么Eclipse会生成.class文件?...
当我使用 Eclipse IDE创建项目时,即使我的代码中存在语法错误,它也会生成一个类文件? class Test { public void test(String value) { System ...
- java 不显示控制台_命令行启动java程序不显示控制台窗口
关键:start javaw –jar xxx.jar 一个例子: ============================================= @ECHO OFF REM " ...
最新文章
- 主成分分析二级指标权重_羡慕神仙权重?主成分与因子分析带你揭开权重的秘密...
- 大数据与智能算法(二-应用级技术)-SMU在线学习笔记
- php 论坛_推荐一个基于话题的高性能轻型开源PHP论坛程序
- Android 使用RadioButton+Fragment构建Tab
- thinkPHP仿QQ飞车手游模拟抽奖源码
- php cii订单导出,使用 kingcms.php 建立一个留言本【附模型代码】
- 保存单文件为mhtml
- 软件方法上竞赛自测题答案
- 安卓下最强的3款pdf阅读器测评
- 软件开发可行性分析规范
- 给定三角形三个顶点的坐标,如何求三角形的外心的坐标呢?
- 用IAR调试芯唐Cortex-M0系列芯片指南
- js去掉url中的域名的方法
- 大四去NTT面试软件实习生的个人总结
- 百度网盘外链采集分析 爬取百度网盘用户分享 自建百度网盘文件链接搜索引擎
- 如何修改mtp模式在电脑上显示的存储容量大小?
- Git版本回退的最佳方式
- 视频教程-①Spring Cloud 第一季(初级入门篇)-Java
- 缺陷检测中的分类、检测与分割网络
- springmvc+ajaxfileupload异步上传