------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! -------
在window中,当出现多个文件时,我们为了方便文件的管理和浏览就可以使用winrar等软件对文件夹进行压缩打包,同理在java中,当如果项目中出现多个package时,为了将多个包压缩成一个压缩文件,我们就可以使用jdk为我们提供的工具jar.exe对文件进行压缩,最后生成一个后缀名为.jar的java压缩文件。比如在在c盘的myclass文件下创建一个包demoB,代码如下:package demoB;然后在使用cmd打开控制台,然后我们在dos命令行输入 javac -d c:\myclass ClassB.java命令,对文件 ClassB.java进行编译。
public class ClassB
{
public void show()
{
System.out.println("demoB ClassB show");
}
}
然后在再在c盘的myclass文件夹下创建一个包demoA,代码如下:
package demoA;然后在使用cmd打开控制台,然后我们在dos命令行输入 javac -d c:\myclass JarDemo.java命令,对文件 ClassB.java进行编译。
import demoB.ClassB;
class JarDemo
{
public static void main(String[] args)
{
ClassB b=new ClassB();
b.show();
}
}
编译成功后,在输入dos命令: java demoA.JarDemo
得到结果是demoB ClassB show;
接下来我们打开c盘的myclass文件夹下可以看到已经生成了两个文件夹
然后我们再在dos命令行输入命令jar -cf jar1_1.jar demoA demoB命令回车后我们可以再去c盘下的myclass文件看发现已经生成了 jar1_1.jar文件了,表示生成jar包文件成功
截图如下:
我们可以打开使用压缩软件解压jar1_1.jar文件,解压后会出现三个文件夹,截图如下:
这时我们可以看到刚才我们创建的两个包demoA和demoB,另外还有一个META-INF文件夹,这个文件夹主要是生成jar包自动生成的文件,主要是配置清单文件。
最后提供一下常见的jar命令:
创建jar包 jar -cvf jar包名.jar packageA packageB --packageA packageB是需要压缩的包名。
查看jar包 jar -tvf jar包名.jar [>定向文件]
解压缩 jar -xvf jar包名.jar