真不好意思!没有分数了!!Jar打包的问题

too_old_coder 2003-12-08 11:06:27
G:\MyWeb\classes>jar cvfm test.jar manifest.mf -C *.class
没有这个文件或目录:CDataAtom.class\CDataAtomArray.class
标明清单(manifest)
增加:CDrawCurve.class(读入= 7062) (写出= 3791)(压缩了 46%)
增加:CDrawKLines.class(读入= 7224) (写出= 3904)(压缩了 45%)
增加:CMemCtrl.class(读入= 533) (写出= 309)(压缩了 42%)
增加:CRect.class(读入= 1413) (写出= 755)(压缩了 46%)
增加:CStockDayDataSequence.class(读入= 631) (写出= 406)(压缩了 35%)
增加:CString8.class(读入= 5989) (写出= 3083)(压缩了 48%)
增加:CStringArray.class(读入= 400) (写出= 276)(压缩了 31%)
增加:CSysDef.class(读入= 11152) (写出= 4054)(压缩了 63%)
增加:CTechAnalysisObj.class(读入= 10257) (写出= 5357)(压缩了 47%)
增加:MyWeb.class(读入= 4020) (写出= 2180)(压缩了 45%)
增加:StockCompDayDataEx.class(读入= 369) (写出= 251)(压缩了 31%)
增加:Tools.class(读入= 5928) (写出= 3287)(压缩了 44%)

CDataAtom.class,CDataAtomArray.class这两个文件明明存在的啊!!所有的文件都在一个目录下面。
我想交几个朋友,小弟初次学习Java,QQ: 139800319
...全文
42 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yema55 2004-01-02
  • 打赏
  • 举报
回复
-c 后面跟的是目录,不是文件
Zazu 2004-01-02
  • 打赏
  • 举报
回复

仔细研究下面的命令与你的有何不同!Good Luck!

G:\JavaDir\test_jar_command>jar cvfm laosu.jar MANIFEST.MF -C untitled1/ *.*
Zazu 2004-01-02
  • 打赏
  • 举报
回复
这问题我曾经也碰到过!主要还是jar命令的书写方式的问题


这个问题可以采用下面两个方案来解决:
(1)使用SUN的JDK jar工具在命令行直接生成,具体方法如下:
I. 新建立一测试目录,取名为test_jar_command(当然,你也可自由命名);
II. 将你的应用类copy到此目录中,通常应该是含有包的类,因为即使是
很小的独立应用程序,其中也很少仅仅包含一个类文件的,当然,你
要非这样做不可,我也没辙:)。比如我的测试就是将所有的类都置于
untitled1包中,那么我就将untitled1目录全部copy到test_jar_command
下,untitled1下包含所有.class文件和一些图像文件等;
III.在test_jar_command目录下创建一个名称为MANIFEST.MF的文本文件,文件
名是无所谓的,如果你愿意,
你也可以把它命名为dog.su(哈哈……),关键是其类型必须是文本文件,
再有就是它的内容,如下--------->
******************************************
//Beginning
Manifest-Version: 1.0
Main-Class: untitled1.Application1

//end!
******************************************
这文件有两点需要注意:A.Main-Class: untitled1.Application1 指向了你的应用
入口class,不能有任何差错,同时应有完整的包路径;B.可能你注意到了,在
Main-Class: untitled1.Application1后面有一空行,其实就是加了个回车,但这是
万万不可或缺的,否则,哈!你可以试试……

IV.进入命令行窗口,执行如下命令:

G:\JavaDir\test_jar_command>

G:\JavaDir\test_jar_command>jar cvfm laosu.jar MANIFEST.MF -C untitled1/ *.*
(!!!请注意命令中的空格!!!)
你在G:\JavaDir\test_jar_command 目录下会发现有laosu.jar文件生成,双击可
执行,OK!
(2)利用javaIDE,大多数IDE都有该功能,下面仅仅列举JBuilder5的示例:

I. 运行JBuilder;
II. File--->New Project,一切按照默认,直至完成;
III. File--->New--->Application,一切按照默认,直至完成;
IV. 编译或运行程序;
V. Wizards--->Achive Builder--->Achive type选Application
,一切按照默认,直至完成;
VI. 到程序存储目录,双击相应jar文件,OK!

若干补充!
双击执行jar文件需要正确的java相关环境变量配置;
你可以仔细研究一下jar命令的各种功能和形式,后附csdn的帖子;
当你的应用程序包含外部资源文件时,如JDBC 驱动程序(classes12.zip)
时,必须在执行主机系统上将classpath指向该资源包,或者在打包jar
文件时将资源文件解压到相应目录并一起打包成你的jar应用程序。当然,在
JBuilder中,你在创建Archive File时,会有相关提示,问你是否要包含
相关的资源文件,具体细节你再研究一下吧



too_old_coder 2003-12-08
  • 打赏
  • 举报
回复
帮帮忙
too_old_coder 2003-12-08
  • 打赏
  • 举报
回复
什么意思? 我的所有的class都在一个目录中,而且,如果使用
jar cvf test.jar *.calss的话,就不会出现这个问题。
但是,如果这样打包,可以在web页面里面使用这些class么?
abcpl 2003-12-08
  • 打赏
  • 举报
回复
Anubis 2003-12-08
  • 打赏
  • 举报
回复
上级目录
too_old_coder 2003-12-08
  • 打赏
  • 举报
回复
这是一个Applet程序,mainclass是MyWeb.class。

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧