Java编译命令整理

引言

近期在做Android相关开发工作,不可避免的需要接触Java层的调用机制,好多年不用Java了,这里整理下相关的编译命令。作为后续参考使用,也防止每次都需要到处查找。

基本概念

  • javac - Java programming language compiler,Java编译器,类似gcc
  • java - the Java Application Launcher,Java程序加载器,类似操作系统的进程加载器(Loader)
  • jdb - Java Application Debugger,调试器,类似gdb
  • javah - C Header and Stub File Generator,JNI头文件生成器
  • javap - Class File Disassembler,Java反编译工具
  • javadoc - API Documentation Generator,Java文档自动生成器
  • jar - JAR Archive Tool,Java库文件工具,类似ar

常规的编译、链接、运行,只需要了解javac、jar、java即可。需要调试可以参考jdb。

编译(.java-->.class)

javac a.java a.class

生成Jar包(.class-->.jar)

jar cf myFile.jar *.class

从Jar包中提取*.class

jar xf myFile.jar

运行java程序

java my.class

更具体的用法建议参考java的用户手册。

java反编译工具Jad

先从http://www.kpdus.com/jad.html下载jad软件。解压之后可以直接使用,放到${jad_home}中。

[jad_home]/jad.exe -r -ff -d src -s java classes/**/*.class

其中-r 表示恢复源文件的目录结构,,-ff 表示将类属性定义放在类方法定义之前, -d 表示输出目录,-s 表示文件的扩展名。
所有的java文件将会被放置到src目录下。
更详细的用法可以参考下载文件中的Readme.txt。

原文地址:https://www.cnblogs.com/tocy/p/java-compile-tools.html