Java开发网 Java开发网
注册 | 登录 | 帮助 | 搜索 | 排行榜 | 发帖统计  

您没有登录

» Java开发网 » Java SE 综合讨论区 » 安装/配置/编译/环境  

按打印兼容模式打印这个话题 打印话题    把这个话题寄给朋友 寄给朋友    该主题的所有更新都将Email到你的邮箱 订阅主题
flat modethreaded modego to previous topicgo to next topicgo to back
作者 将java程序打包到jar形式的安装步骤及注意事项
huntery





发贴: 1
积分: 0
于 2006-01-16 22:45 user profilesend a private message to usersearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
最近单位需要使用java编写个小程序,编写完后想把所有的class和资源文件打包成jar形式,期间碰到一些技巧问题,致使jar文件不能正确运行,解决后发现网上资料虽多,但基本很简单,没有详细的步骤(也可能我没发现),现把自己的心得写出来,希望对大家有所帮助。

前提:程序的包是mypack
主程序为test,相对路径形式为mypack./test(unix)。
程序资源*.gif在images目录下, 相对路径形式为mypack./images。
1.  将mypack下的程序打包。
改变目录到mypack的上一层目录,编辑mypack的清单文件,例如:manifest文件名
Class-Path: 填写程序中使用的包.
Main-Class: mypack.test.
每个条目“:”后要空格。
使用jar cvmf manifest mypack.jar mypack,生成mypack.jar。
因为jar文件使用zip格式压缩,所以可以使用winrar查看mypack.jar,会发现和mypack目录同层多出来一个META-INF目录,打开META-INF目录下的MANIFEST.MF文件,文件内容如果为:
Manifest-Version: 1.0
Class-Path: ......(清单文件的设置)
Created-By: 1.4.2_08 (Sun Microsystems Inc.)
Main-Class: mypack.test

使用java –jar mypack.jar或者在windows平台下,在资源管理器下鼠标双击mypack.jar,程序也可以自动执行。

以上都是在unix平台上对java程序进行打包的步骤。虽然在windows平台上也可以按照以上步骤打包,但是MANIFEST.MF文件的内容始终为
Manifest-Version: 1.0
Created-By: 1.4.2_08 (Sun Microsystems Inc.)
和在unix 下内容不一样,也不能正确运行,运行中会报“Failed to load Main-Class manifest attribute from mypack.jar”。不知为何,如果你知道,请告诉我。

2 .程序资源在程序文件中注意的事项。
在程序中不要写决对路径,写相对路径。
比如:new ImageIcon(getClass().getResource("/mypack/images/test”,”test”));
这样你的漂亮的图像才会在jar文件中正确显示。




有了Swing为什么还要SWT?

话题树型展开
人气 标题 作者 字数 发贴时间
10412 将java程序打包到jar形式的安装步骤及注意事项 huntery 1116 2006-01-16 22:45
7813 Re:将java程序打包到jar形式的安装步骤及注意事项 ranchgirl 90 2006-01-17 05:38
7792 Re:将java程序打包到jar形式的安装步骤及注意事项 Lovebl_He 196 2006-01-26 08:55
7757 Re:将java程序打包到jar形式的安装步骤及注意事项 wkz19820223 7 2006-02-08 16:26
7965 Re:将java程序打包到jar形式的安装步骤及注意事项 bwpc 34 2006-02-09 09:28

flat modethreaded modego to previous topicgo to next topicgo to back
  已读帖子
  新的帖子
  被删除的帖子
Jump to the top of page

   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923