1、java代码打包成jar
1. 手动打包可直接执行的jar包
1) 先使用javac编译java文件,得到class文件
2) 新建文件,名字任起,比如可以叫manifest,内容如下(注意:1. 冒号后面加一个空格,2. 最后必须回车到新的空行,否则出错,如下面内容就必须在addJarPkg后面再输入一个回车)
Manifest-Version: 1.0
Main-Class: addJarPkg
3) 把编译好的class文件和第2步新建的文件放入指定文件夹,如test
4) 在cmd中运行命令
jar -cvfm main.jar manifest -C test .
- 注意路径问题,其中test后面的 “.” 代表所有文件
- jar后面的-m选项会将第2步新建的文件合并到 jar包中的
META-INF/MANIFEST.MF,也就是更新清单配置文件。关于META-INF/MANIFEST.MF,可查看META-INF/MANIFEST.MF介绍 - -C 后面指定要打包的目录, 目录后面的 . 代表目录下所有文件
2. 使用intellij idea工具打包可直接执行的jar包
1) 点击项目
2) 点击intellij idea左上角的“File”菜单 -> Project Structure
3)点击"Artifacts" -> 绿色的"+" -> “JAR” -> Empty
4) Name栏填入自定义的名字,Output ditectory选择jar包目标目录,Available Elements里双击需要添加到jar包的文件,即可添加到左边的jar包目录下,具体看下图
5)点击Create Manifest,选择放置MANIFEST.MF的文件路径(直接默认项目根目录就行,尽量不要选别的路径,可能会造成不必要的错误),点击OK。
6) 点击Main Class后面选择按钮
7) 弹出框中选择需要运行程序入口main函数,点击OK
8) 以上设置完之后,点击OK
9) 点击菜单中“Build” -> “Build Artifacts”
10) 双击弹出框中待生成jar包下面的build即可,如下图
至此使用Intellij idea生成可直接执行jar包完成。 参考------https://blog.csdn.net/littleflower9/article/details/121036703
2、jar转成dex: eg:在jar包所在目录下进入命令控制台,输入命令
dx --dex --output=android01.dex testAndroidJar-1.0-SNAPSHOT.jar
- testAndroidJar-1.0-SNAPSHOT.jar,为需要转换的jar名称
- android01.dex,为转换后的dex文件的名称
3、 将dex文件push放入移动设备
- adb -s emulator-5554 push D:\JavaCode\testmaven00\testAndroidJar\target\android01.dex /data/local/tmp
- emulator-5554,为连接设备的序列号
- D:\JavaCode\testmaven00\testAndroidJar\target\android01.dex,为需要放入移动设备的文件的绝对路径
- /data/local/tmp,为移动设备存放dex文件的目录
4、执行dex文件:首先进入安卓系统
-
输入命令:app_process -Djava.class.path=/data/local/tmp/android01.dex /data/local/tmp com.android.TestAndroid
- android01.dex,为转码后的dex文件,前面需要加上存放文件的目录
- TestAndroid,为java代码的主方法所在类名,前面还需加上包名“com.android.”
参考:https://blog.csdn.net/qq_41841482/article/details/122472958
标签:dex,文件,java,jar,android01,点击,android,运行 From: https://www.cnblogs.com/banyanisdora/p/17069974.html