如何使用命令行编译和运行Java代码

2025-03-30 21:36:09
推荐回答(1个)
回答1:

这里给你一个具体的场景来讲述如何使用命令行编译和运行Java代码:

任务

我们有一个相当标准的Java工程,它包含三个顶层文件夹: 

/bin-用来存放已编译好的.class文件 

/lib-用来存放第三方.jar文件 

/src-存放.java源代码 

我的任务就是要从Java工程根目录去编译和运行工程。我们将使用Windows操作系统作为例子(和在Unix系统上的唯一区别就是路径分隔符是”:“而不是”;“)。

编译Java代码

第一步是把文本文件.java源代码编译成Java虚拟机字节码文件(.class)。这一步使用一个叫javac的JDK工具来完成。 

假设我们在应用的根目录下,从com.example包下尝试把Application.java文件,以及把lib文件夹中的lib1.jar和lib2.jar库编译到目标文件夹bin下,编译命令应该是如下格式:

javac -d bin -sourcepath src -cp lib/lib1.jar;lib/lib2.jar src/com/example/Application.java1

编译完后,/bin/com/example/Application.class应该就会创建出来了。如何Application.java使用了其他工程的类,那么他们全部会自动被编译并且放到相应的文件夹下。

运行Java代码

为了启动我们刚刚编译的.class文件,需要另外一个叫java的JDK工具。 

假设我们在应用的根目录下,为了能够启动com.example包中的,使用了lib文件夹下的lib1.jar和lib2.jar库的Application.class文件,启动命令应该是如下

java -cp bin;lib/lib1.jar;lib/lib2.jar com.example.Application

我们在这里没有提供文件名,只有一个实际的类名,java会基于提供的classpath(缩写成cp)路径去搜索。