现在的位置: 首页 > 操作系统 > 正文

使用Java命令编译运行Java程序

2020年02月10日 操作系统 ⁄ 共 1872字 ⁄ 字号 评论关闭

Java 编译的过程,就是将 java 项目从源文件变成 .class 文件的过程,而 .class 文件,最后会被加载到JVM 中运行。在 JDK bin/ 目录下,提供了 javac 命令,用于将 .java 源文件编译成 .class 字节码文件,提供了 java 命令,以 Main_Class 为入口,根据运行需要,加载相应的 class 文件到 JVM 中执行。

关于环境变量

如果在没有引用第三方 jar 的情况下,想在任意目录下直接运行 javac 编译 .java 文件,则需要设置 PATH 和 CLASSPATH 环境变量,关于如何设置,可参考

Ubuntu 14.04安装JDK1.8.0_25与配置环境变量 http://www.xuebuyuan.com/Linux/2015-01/112030.htm

CentOS 搭建JDK环境 http://www.xuebuyuan.com/Linux/2015-06/118879.htm

Ubuntu 14.04安装JDK1.8.0_25与配置环境变量 http://www.xuebuyuan.com/Linux/2015-01/112030.htm

Ubuntu 14.04 LTS安装Oracle JDK 1.8 http://www.xuebuyuan.com/Linux/2014-11/109216.htm

Ubuntu安装JDK与环境变量配置 http://www.xuebuyuan.com/Linux/2016-04/130438.htm

Ubuntu 14.04 安装 JDK8 http://www.xuebuyuan.com/Linux/2014-09/106218.htm

Ubuntu下安装JDK图文解析 http://www.xuebuyuan.com/Linux/2014-09/107291.htm

两种情况

如果 java 程序只有单个 .java 文件,且里面有 public static void main(String[] args) 方法,可以直接使用 javac 编译生成 .class 文件 -> 使用 java 命令运行程序

>$ javac Hello.java>$ java Hello

如果有多个 .java 文件,则多了一个步骤,需要先打包成 .jar 文件,最后使用 java -jar xx.jar 命令运行即可,总结如下:使用 javac 编译生成 .class 文件 -> 使用 jar 命令生成 jar 包 -> 使用 java 命令运行程序

jar 命令生成 jar 包

>$ cd classes // 首先进入根目录,否则打包会有问题>$ touch MANIFEST.MF>$ jar -cvfm xx.jar MANIFEST.MF com//** * c 表示创建压缩包 .jar 包 * v 表示 显示详细信息 * m 表示将后面的清单文件 MANIFEST.MF 一并打包到 jar 里面去,注意这个不能省略 * xx.jar 表示最终生成的 jar包名 * classes/ 表示存放所有 .class 文件的 package 根目录 * 其中 清单文件 MANIFEST.MF 的内容如下: Manifest-Version: 1.0 // 清单版本 Main-Class: com.linky.Main // jar 包运行后的 main 函数入口类 */

打包成功后,会在根目录下生成 META-INF/ 和 com/ 两个子目录,其中 META-INF/ 中存放了清单文件MANIFEST.MF,com/ 目录下存放了所有 .class 文件。

如果有多个 .java 文件,可以将需要编译的 .java 文件,包括 package,写入 sourcelist(可随便命名) 中,详情可见 javac

完整命令如下:

>$ find com/ -name '*.java' > sourcelist >$ javac @sourcelist -d classes/>$ cd classes/>$ touch MANIFEST.MF // 添加如下语句到该文件中,然后保存Manifest-Version: 1.0 Main-Class: com.linky.Server // 里面包含 main 入口函数>$ jar -cvfm server.jar MANIFEST.MF com/>$ java -jar server.jar

本文永久更新链接地址:http://www.xuebuyuan.com/Linux/2017-01/139790.htm

以上就上有关使用Java命令编译运行Java程序的相关介绍,要了解更多Java编译,使用 Java 命令编译运行 Java 程序,编程,Linux编程,Linux Shell,Android,Android教程,JAVA,C语言,Python,HTML5内容请登录学步园。

抱歉!评论已关闭.