编写完成.java源文件以后需要对这个源文件进行编译;
1、java编译命令为:javac [参数] [源文件].java
javac 命名主要目的就是将.java的源文件编译成JVM能认识的.class文件(字节码文件)
2、java运行命令为:java [参数] [类名]
3、javadoc命令为:javadoc [选项] [软件包名称] 源文件
以HelloWorld.java为例
将HelloWorld.java文件中的注释生成API文档并且保存在当前目录下的apis文件夹中
javadoc -d ./apis/ HelloWorld.java
4、Java的压缩命令,这个jar命令是将所有的文件打包成一个压缩文件;
jar命令 ===> 主要的还是要打包.class文件,因为jar命令打包成.jar文件可以直接让JVM调用,或者是读取.
a.生成jar包的命令:jar -cvf [jar包的名字] [具体的打包路径] files
b.解压缩jar包的命令:jar -xvf [jar包的名字]
通过jar -cvf生成jar包中含有一个 META-INF目录/MANIFEST.MF
这个MANIFEST.MF文件 描述基本的打包的信息;
这个文件还用于设置启动类:
Main-Class: com.demo.ChooseNum
Main-Class:表示的是当需要运行这个jar包的时候是否启动对应的类;
以后编译java文件建议全部使用
javac -d . [具体的Java源文件]
这样编译,如果有包结构的就生产对应的包目录,如果没有就不生成;同样可以编译;
如果需要运行有包结构的类
java [包结构]+[类名]
如下代码:
package com.demo;
public class TestPackage{
public static void main(String args[]){
System.out.println("HelloWorld!");
}
}
上面这个类完整类名:com.demo.TestPackage
javac TestPackage.java 编译出来的文件是不存在具体的路径文件夹的;
javac -d . TestPackage.java 这样编译会自动生成com/demo目录,而TestPackage.class文件就会放在该目录。
也可以使用 javac -d . *.java 使用*符号代表编译当前目录的所有.java文件。
java com.demo.TestPackage 运行该程序,但必须要使用完整类名。