作者catjimmy (cat)
看板java
标题[问题] jar打包问题
时间Tue Jul 12 09:55:53 2011
新手几个询问,已爬文.. :(
1.我有一支写好的java小程式,想要打包成可执行档後在其他平台(win/UBUNTU)上跑看看
本身使用Mac + Vim作为开发环境,因此compile跟jar打包都是在cmd环境下执行的...
我在打包jar前 有加入Manifest.mf档案并指定了Main Class,该留空白的地方也没少
使用 jar cvmf Manifest.mf Transformer.jar -C *.class 指令打包
有成功产生一个jar档案,但是产生中出现乱码讯息让我不太了解
Filter.class/Frame$1.class?J?S???o???Υ?
?s?W manifest
?s?W?JFrame$ButtonHandler.class (=3627)(?g=1896)(??Y 47%)
?s?W?JFrame$CheckBoxHandler.class (=540)(?g=350)(??Y 35%)
?s?W?JFrame.class (=3872)(?g=1845)(??Y 52%)
?s?W?JReadFile.class (=5745)(?g=2904)(??Y 49%)
?s?W?JTransformer.class (=532)(?g=384)(??Y 27%)
然後在我直接执行jar档案的时候,就跳出无法启动的错误,在cmd下执行
java -jar Transformer.jar
会出现Exception in thread "main" java.lang.NoClassDefFoundError: Filter
虽然我看得出来他找不到Filter这个class,但我不了解是哪边错误,因为我自己在编译
执行的时候他都好好的说Orz。
2.当我程式中如果有中文时,都会编译错误产生
warning: unmappable character for encoding Big5
但我看我的文件都是UTF-8的编码,这讯息是指说我的Java编译中文是使用big5吗?
3.在我另一个环境UBUNTU上的Java compile时都会出现
Picked up_JAVA_OPTIONS: -Dfile.encoding=Big5的讯息但不影响编译
请问这个是什麽样的问题且我必须去哪边来修改呢?
以上是一些我爬文过且google过不求甚解的问题,麻烦请教:)
另外在
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.168.169.129
1F:→ calais007:我觉的是compiler读你的档案用Big5,但你的档案编码是 07/12 12:58
2F:→ calais007:utf-8 07/12 12:59
3F:→ uziel:第一个问题大概是 Manifest 里面的 classpath 变数没设好 07/12 20:51
4F:→ uziel:至於2跟3,javac 有一个 -encoding 参数可以指定来源档编码 07/12 20:54