免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3285 | 回复: 13
打印 上一主题 下一主题

jar 打包研究及相关问题,有指教也有请教。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-01-03 16:39 |只看该作者 |倒序浏览
我也有一个用jar 打包不成功的问题:

jar用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目录] 文件名 ...

一般的,如果没有 Mian-Class 可以用 jar -cvf 目标jar文件名 源路径或者文件名
就可以建立一个jar.

如果想建立带有 main-class 的可执行的jar 就要指定Mian-Class ,这个参数在mainifest.mf文件中指定,此时建立一个jar文件要使用带m的参数。

jar -cvfm 目标jar文件名 自定义的 mainifest.mf文件名 源路径或者文件名。

一个最简单的例子是:
 在当前目录下:比如 I:/javastud 有一个 hello 文件夹,下面有一个Hello.class 文件,是一个可执行文件,。
此时手工编辑一个myhellomain.mf文件。
myhellomain.mf文件内容如下:

J:\javastud>;type myhellomain.mf.mf
Created-By: spark chen 2005-1-3
Main-Class: hello.Hello

 使用如下命令建立jar文件。
jar -cvfm hello.jar myhellomain.mf hello
成功显示:
J:\javastud>;jar -cvfm hello.jar myhellomain.mf hello
标明清单(manifest)
增加:hello/(读入= 0) (写出= 0)(存储了 0%)
增加:hello/Hello.class(读入= 427) (写出= 297)(压缩了 30%)
检查文件hello.jar
用winzip 或者winrar 或者是jar -tf
J:\javastud>;jar -tf hello.jar
META-INF/
META-INF/MANIFEST.MF
hello/
hello/Hello.class
在winrar 中直接显示 META-INF/MANIFEST.MF:
Manifest-Version: 1.0
Created-By: spark chen 2005-1-3

总是出现不了我想要的:
Main-Class: hello.Hello

所以也总是生不成hello.jar 文件,请各路高手指正!
如上我测试数次,包括使用其它的可执行class 文件,都不可以,请教各位了。

我有详细参考了
http://www.itpub.net/97204.html
http://java.sun.com/docs/books/tutorial/jar/basics/update.html
http://java.sun.com/docs/books/tutorial/jar/basics/build.html

论坛徽章:
0
2 [报告]
发表于 2005-01-04 17:17 |只看该作者

jar 打包研究及相关问题,有指教也有请教。

谢谢各位的留意,顶一下!
敬请各位大哥帮助!

论坛徽章:
0
3 [报告]
发表于 2005-01-05 08:36 |只看该作者

jar 打包研究及相关问题,有指教也有请教。

J:\javastud>;type myhellomain.mf.mf
?怎么两个扩展名?

论坛徽章:
0
4 [报告]
发表于 2005-01-05 11:42 |只看该作者

jar 打包研究及相关问题,有指教也有请教。

笔误,不过这个文件名字无所谓。可以自己定义的。

论坛徽章:
0
5 [报告]
发表于 2005-01-07 10:38 |只看该作者

jar 打包研究及相关问题,有指教也有请教。

自己再顶一下,请各位看在我诚心的份上,帮我测试测试与分析分析,为什么,是你们大家都会这样,还是我一个会这样?

万分感谢!

论坛徽章:
0
6 [报告]
发表于 2005-01-07 11:35 |只看该作者

jar 打包研究及相关问题,有指教也有请教。

jar -cvfm hello.jar myhellomain.mf hello
最后一个hello是干什么的?

  1. C:\aa>;dir
  2. 驱动器 C 中的卷是 SYSTEM
  3. 卷的序列号是 604E-D9C3

  4. C:\aa 的目录

  5. 2005-01-07  11:22       <DIR>;          .
  6. 2005-01-07  11:22       <DIR>;          ..
  7. 2005-01-07  11:23                    4 x.a
  8. 2005-01-07  11:29                   84 mymanifest
  9. 2005-01-07  11:29                  357 classes.jar

  10. C:\aa>;type mymanifest
  11. Manifest-Version: 1.0
  12. Created-By: spark chen 2005-1-3
  13. Main-Class: hello.Hello

  14. C:\aa>;jar cvfm classes.jar mymanifest
  15. 标明清单(manifest)
复制代码

然后察看classes.jar 里面的结果

  1. Manifest-Version: 1.0
  2. Created-By: spark chen 2005-1-3
  3. Main-Class: hello.Hello
复制代码

论坛徽章:
0
7 [报告]
发表于 2005-01-09 03:23 |只看该作者

jar 打包研究及相关问题,有指教也有请教。

关注中

论坛徽章:
0
8 [报告]
发表于 2005-01-10 08:56 |只看该作者

jar 打包研究及相关问题,有指教也有请教。

hello 是文件源,也是一个目录名,内容是 Hello.class 文件
再明列示一个j:\javastud 目录下的文件夹及文件名:

j:\javastud
hello
    Hello.class
myhellomain.mf

[quote]原帖由 "knight-yl"][/quote 发表:

论坛徽章:
0
9 [报告]
发表于 2005-01-10 11:19 |只看该作者

jar 打包研究及相关问题,有指教也有请教。

问个低级问题:有一个软件是jar文件,怎么运行啊?

论坛徽章:
0
10 [报告]
发表于 2005-01-10 16:08 |只看该作者

jar 打包研究及相关问题,有指教也有请教。

有Main-Class: XXX.TTT就可以用javaw运行
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP