\>jar cf jar-file input-file(s)
/*
说明,windows下和UNIX下对目录结构的分隔符习惯不同,前者为\,后者为/ ,本文仅仅为了说明问题,并不严格加以说明。——注意,无论任何平
台,在manifest文件中均采用/
*/
/*
该形式的命令在当前目录下创建一个jar-file
c开关指明“创建”一个jar文件
f开关指明输出到文件,而不是stdout(标准输出)
jar-file如果不指明后缀,则默认为*.jar
空格用于分隔多个输入文件,可以使用通配符“*”
有必要时指明目录
开关出现的顺序不重要,但是如果有m开关则另当别论。
该命令默认创建一个manifest文件
*/
/*
对于java版本1,jar文件仅支持ASCII作文件名,java版本2则支持UTF-8编码的文件名。
*/
/*
关于创建,可用的其他开关:
v 当jar文件创建时,在stderr(java版本1)或stdout(java版本2)产生冗余(verbose)输出。报告添加到jar的文件名录。
0 (zero)指明不要压缩。
M 指明不要产生默认的manifest文件。
m 添加手工已编制好的manifest文件:
\>jar cmf existing-manifest jar-file input-file(s)
-C 在操作过程中转变目录(仅对java版本2)。
*/
/*
一个例子。
假设,如下目录结构(windows下):
TicTacToe\TicTacToe.class (文件)
TicTacToe\audio (子目录,该层下全是au文件)
TicTacToe\images (子目录,该层下全是gif文件)
如果要将该东东压入jar文件TicTacToe.jar,应在TicTacToe目录中(!)执行下面命令:
TicTacToe>jar cvf TicTacToe.jar TicTacToe.class audio images
jar程序会自动将audio和images目录及其子目录一咕脑(recursively)全压入TicTacToe.jar文件,该文件将出现于 TicTacToe\TicTacToe.jar
因为使用了verbose output开关,可以看到类似如下的输出:
adding: TicTacToe.class (in=3825) (out=2222) (deflated 41%)
adding: audio/ (in=0) (out=0) (stored 0%)
adding: audio/beep.au (in=4032) (out=3572) (deflated 11%)
adding: audio/ding.au (in=2566) (out=2055) (deflated 19%)
adding: audio/return.au (in=6558) (out=4401) (deflated 32%)
adding: audio/yahoo1.au (in=7834) (out=6985) (deflated 10%)
adding: audio/yahoo2.au (in=7463) (out=4607) (deflated 38%)
adding: images/ (in=0) (out=0) (stored 0%)
adding: images/cross.gif (in=157) (out=160) (deflated -1%)
adding: images/not.gif (in=158) (out=161) (deflated -1%)
如果:
TicTacToe>jar cvf0 TicTacToe.jar TicTacToe.class audio images
则表示只备份不压缩。
如果该目录内全是需要jar掉的文件及其相应目录结构:
TicTacToe>jar cvf TicTacToe.jar *
是比较简洁的写法。
如果不特别使用开关m或M,默认的manifest文件将产生于
META-INF/MANIFEST.MF
继承了GZIP的特点,-C开关用于跳到某目录,以改变所存入jar文件的目录结构。多半用于将原来位于不同目录结构的文件作jar时聚合在一起。例如:
TicTacToe>jar cf ImageAudio.jar -C images . -C audio .
产生的jar文件内容和结构:
META-INF/MANIFEST.MF
cross.gif
not.gif
beep.au
ding.au
return.au
yahoo1.au
yahoo2.au
(现在假设我们images子目录下还有子目录,像这样:
TicTacToe\images\jpg
jpg子目录下还有一些*.jpg文件那以上命令的结果应该是:
META-INF/MANIFEST.MF
jpg/AMAKUSA.jpg
jpg/UKYO.jpg
cross.gif
not.gif
beep.au
ding.au
return.au
yahoo1.au
yahoo2.au
说明了-C的真正含义。
)
*/
分享到:
相关推荐
build jar 包build jar 包build jar 包build jar 包build jar 包
thrift java build jar
1.把此jar文件夹在加载到eclipse中(鼠标右键build path - configure build path-libraries-add jars-选择此jar文件(本地路径)-ok-apply) 2.在代码中,把鼠标光标放在要查看源码的类名称上,按住键盘Ctrl键,当光标...
"MyEclipse8.5安装Fatjar和制作可执行jar方法" MyEclipse8.5是 Java integrated development environment (IDE),它提供了许多有用的功能和插件来帮助开发者快速构建和部署Java应用程序。Fatjar是一个插件,允许...
使用: 安装后,可以在 [Export] 向导里找到 "Build Fat-JAR",然后根据提示即可完成打包。 打包完成之后,可以直接通过java -jar 执行打包好的jar文件,不需要设置classpath,以及配置其他jar文件。
Ant项目所需要用到的apache-ant-1.8.4-bin.zip以及build.xml 内部还有jsch-0.1.51.jar
jar包,亲测可用
java运行依赖jar包
用Git实时将开源和不开源的部分编译在一起,获取spigot和bukkit服务端
spring-build-src-4.0.0.RELEASE.jar
java运行依赖jar包
gbase的链接jar包,版本为 8.3.81.35-build52.2-bin
从git上下载的1.2.0的源码,在本地编译打包成jar包 双击运行 xxx\nacos\distribution\target\nacos-server-1.2.0\nacos\bin 下的startup.cmd即可运行。访问http://localhost:8848/nacos即可进入界面
使用ganymed-ssh2-build210.jar从远程服务器拉取文件到本地,或上传文件到指定服务器下的目录。个人略微修改了jar包的内容,解决了文件名中带空格时报错的问题,可以下载名字中带空格的文件。
gbase-connector-java-8.3.81.53-build-55.4.1-bin.jar
GBase数据库 链接jar包 JDBC版 gbase-connector-java-8.3.81.53-build55.3.1-bin.jar 操作文档: https://download.csdn.net/download/weixin_42350212/21762118
Unknown error: Unable to build: the file dx.jar was not loaded from the SDK folder! 问题的缺失文件 eclipse.buildId=M20100211-1343 java.version=1.6.0_10-rc2 java.vendor=Sun Microsystems Inc. ...
gabse jdbc 最新版gbase-connector-java-8.3.81.53-build55.2.1-bin的jar资源文件
jar包,亲测可用
gbase插件(gbase-connector-java-8.3.81.53-build55.5.5-bin.jar)