下面是Java编译器(javac)、Java解释器(java)和打jar包的命令实例攻略。
javac命令实例
javac
命令用于编译Java程序,将源代码编译成可执行的Java字节码文件,该命令的语法格式如下:
javac [options] [source files]
options
:可选参数,比如指定编译器版本、指定输出目录等。source files
:要编译的Java源代码文件,可以是多个源文件,多个源文件之间用空格隔开。
下面是两条javac命令的示例:
示例1:编译单个Java源文件
假设我们有一个Hello.java文件,它包含了一个HelloWorld类,该类的代码如下:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
我们可以使用以下命令将该源文件编译成字节码文件:
javac HelloWorld.java
执行该命令后,会在当前目录下生成一个名为HelloWorld.class的文件,该文件就是编译后的字节码文件。
示例2:编译多个Java源文件
假设我们有两个Java源文件,分别为Hello.java和World.java,它们的代码如下:
// Hello.java
public class Hello {
public static void sayHello() {
System.out.println("Hello, ");
}
}
// World.java
public class World {
public static void sayWorld() {
System.out.println("world!");
}
}
我们可以使用以下命令将这两个源文件一起编译成字节码文件:
javac Hello.java World.java
执行该命令后,会在当前目录下生成两个名为Hello.class和World.class的文件,它们分别是编译后的Hello.java和World.java源代码文件的字节码文件。
java命令实例
java
命令用于执行已编译的Java程序,在命令行中输入以下命令即可执行一个已编译的Java程序:
java [options] class [args]
options
:可选参数,比如指定Java虚拟机的堆大小等。class
:要执行的Java程序的入口类名。args
:可选参数,表示程序执行时的命令行参数,多个参数之间用空格隔开。
下面是两条java命令的示例:
示例1:执行已编译的单个Java程序
假设我们已经编译好了一个名为HelloWorld的Java程序,该程序的入口类为HelloWorld,该类的代码如下:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}
我们可以使用以下命令执行该程序:
java HelloWorld
执行该命令后,命令行中会输出"Hello, world!"。
示例2:执行已编译的有参数的Java程序
假设我们已经编译好了一个名为Sum的Java程序,该程序的入口类为Sum,该类的代码如下:
public class Sum {
public static void main(String[] args) {
int sum = 0;
for (String arg : args) {
sum += Integer.parseInt(arg);
}
System.out.println("The sum is " + sum);
}
}
该程序可以计算命令行输入的数字参数的和。我们可以使用以下命令执行该程序:
java Sum 1 2 3 4 5
执行该命令后,命令行中会输出"The sum is 15"。
打jar包命令实例
jar
命令用于将多个Java类文件打包成一个jar包(Java归档文件),该jar包可以方便地分发和部署Java应用程序。以下是打jar包的命令格式:
jar cvf jar-file [manifest-file] [files...]
jar-file
:jar包的名称。manifest-file
:可选参数,表示jar包清单文件的名称,用于描述jar包中包含的文件、类等信息。files
:要打包的文件或目录,可以是多个文件或目录,多个文件或目录之间用空格隔开,可以使用通配符(*)来指定多个文件或目录。
下面是两条打jar包的命令实例:
示例1:打包一个Java程序的所有class文件
假设我们已经编译好了一个名为HelloWorld的Java程序,该程序的入口类为HelloWorld,它包含了两个Java源文件Hello.java和World.java,并且已经将它们编译成了两个class文件Hello.class和World.class。我们可以使用以下命令将这两个class文件打包成一个名为HelloWorld.jar的jar包:
jar cvf HelloWorld.jar Hello.class World.class
执行该命令后,会在当前目录下生成一个名为HelloWorld.jar的jar包,该jar包包含了Hello.class和World.class两个文件。
示例2:打包整个Java项目的所有class文件
假设我们有一个名为HelloWorld的Java项目,包含了多个Java源文件和多个子目录。我们想要将该项目的所有class文件打包成一个名为HelloWorld.jar的jar包。我们可以使用以下命令将整个项目目录打包到一个名为HelloWorld.jar的jar包中:
jar cvf HelloWorld.jar HelloWorld/
执行该命令后,会在当前目录下生成一个名为HelloWorld.jar的jar包,该jar包包含了整个项目目录中的所有class文件。注意,我们在命令中指定的是项目目录HelloWorld/,而不是具体的文件或目录,这样可以将整个项目目录结构打包到jar包中。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javac、java打jar包命令实例 - Python技术站