怎么用jar命令解压war包到指定的文件家下
jar xf xxx.jar 解压到了当前jar包所在的文件夹 jar命令无法将.jar解压到指定目录,因为-C参数只在创建或更新包的时候可用 要将.jar文件解压到指定目录可以用unzip命令 unzip命令在windows下自带就有,不用另外下载安装jar xf xxx.jar 解压到了当前jar包所在的文件夹 jar命令无法将.jar解压到指定目录,因为-C参数只在创建或更新包的时候可用 要将.jar文件解压到指定目录可以用unzip命令 unzip命令在windows下自带就有,不用另外下载安装
怎么用linux命令获取某文件夹下的所有jar文件并将jar文件中类名相同的.class文件挑出,放在一个文件夹里
find /目录1 -name '*.jar' -exec jar -xvf {} /目录2 \; find /目录2/ -name '*.class' -exec cp {} /目录3 \;目录1是要查找的目录,目录2是临时存放解压文件的目录,目录3是要放文件的目录,之后如果不要目录2的再rm -rf /目录2 就搞定了
dubo怎么压缩jar
对待jar文件最好不要直接解压,要不里面的MF文件可能出问题。一般修改JAR文件只是想换掉其中的几个文件,你可以这样做,用WinRAR打开JAR文件,找到所要的文件夹,把想换掉的新文件直接拖进WinRar窗口。可能会有个提示对话框,应该选添加并替换,这样换完后,关掉WinRAR窗口你的JAR就改好了。
jar压缩原理
在网络上,有些java程序的提供者将他们的java安装程序打包成一个jar文件的形式。当运行时,自动将jar中的程序解压出来安装到使用者的电脑上。他们是如何做到这些的呢?现在我们就来解开这个迷,让大家了解如果制作这样的jar文件。
首先,我们来回忆一下,以前我们打包jar时,通常将class程序要用到的资源如*.gif图片、*.xml配置文件等都打包在同一个jar中。而程序读取它们时,无外乎以下几种情况:
getClass().getResource(String name)
getClass().getresourceAsStream(String name)
由于Class的这两个方法实际上就是调用了ClassLoader的相应方法,所以可以干脆用下面的方法:
ClassLoader.getSystemClassLoader().getResource(String name)
ClassLoader.getSystemClassLoader().getResourceAsStream(String name)
getResource可以取得相关资源的URL, 这在使用图片资源时很有用。而getResourceAsStream可以取得资源的输入流,这个通常在读取jar中的xml配置文件时用到。
其实讲到这里我们就可以明白那些可以自动解压安装的jar是怎么一回事了----它就是使用了getresourceAsStream方法。
下面我们来详细描述怎么实现一个通用的自动解压安装的jar程序。
为了使这个程序尽可能的通用,我将它设计成下面的结构:
Resource包含要安装的资源的信息,通过getName方法可以取得资源名称,通过getDistPath方法要被安装的路径。相应的resourceCollectioin是Resource的集合。
InstallConfig是要安装资源的配置信息,为了通用的目的,将资源配置信息写入一名为install-config.xml的文件。InstallConfig初始化时,会载入配置文件中的信息。将其实例化成Resource集合:

