java 常见命令(javac、java、jar)
java 常见命令
***********************************************
javac:编译源文件,将.java文件编译为.class文件
命令格式:javac [options] source_file
常用选项:
-d:指定编译生成的类文件.class的位置
说明:源文件.java中有多少个class类,就会编译生成对应数量的.class文件
*************************************
示例:
package hello;
import java.util.Arrays;
class Person{
private String name;
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return this.name+" "+this.age;
}
}
public class HelloWorld3 {
public static void main(String[] args){
Person person=new Person();
person.setName("瓜田李下");
person.setAge(12);
System.out.println(person);
System.out.println(Arrays.toString(args));
System.out.println("hello world3");
}
}
编译后的class文件
***********************************************
jar:打包命令,将编译后的class文件达打成ar包
创建jar包:jar -cvf jar_name dir
查看jar包:jar -tvf jar_name
解压jar包:jar -xf jar_name
示例
***********************************************
java:运行应用程序
命令格式:
运行编译后的main_class类:java [options] main_class [args]
直接运行源文件:java [options] file_name [args],注意:这种运行方式只适用于只有一个class文件的源文件
运行编译后文件打成的jar包:java -jar jar_name [args]
常用选项:
-cp、-classpath、--class-path:指定.class文件所在的位置
-esa:启用系统断言功能
-dsa:禁用系统断言功能
-ea:指定类启用断言功能
-da:指定类禁用断言
*************************************
示例:
直接运行源文件
package hello;
import java.util.Arrays;
public class HelloWorld {
public static void main(String[] args){
System.out.println(Arrays.toString(args));
System.out.println("hello world");
}
}
运行结果
运行编译后的类文件
package hello;
import java.util.Arrays;
class Person{
private String name;
private Integer age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return this.name+" "+this.age;
}
}
public class HelloWorld3 {
public static void main(String[] args){
Person person=new Person();
person.setName("瓜田李下");
person.setAge(12);
System.out.println(person);
System.out.println(Arrays.toString(args));
System.out.println("hello world3");
}
}
运行结果输出
运行编译后打成的jar包
修改META-INF/MANIFEST.MF,添加Main-Class: hello.HelloWorld3