关于jar直接运行的问题

fengxin09 2005-11-09 01:07:25
我打了一个jar包
使用java -jar test.jar可以运行
但是双击或者使用javaw test.jar的时候它就会提示说
could not find the main class
疑问:
既然不能找到main的类为什么java -jar test.jar可以运行呢?
请高人解答
...全文
658 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengxin09 2005-11-16
  • 打赏
  • 举报
回复
我晕
转了一圈最后又转回了原地
算了
封贴吧

顺便说几句
如果要实现双击的话可以采用另一种方式,那就是写一个批处理文件
里面写上一句命令 javaw -jar *.jar
这样*.jar就可以通过双击这个批处理文件直接运行了,而且不会出现dos黑屏
这个方法基本上对于所有的*.jar文件可行
最后感谢大家的热心帮助
zncn2 2005-11-12
  • 打赏
  • 举报
回复
遭糕记错了,新加的环境变量应该叫CLASS_PATH!!!
zncn2 2005-11-12
  • 打赏
  • 举报
回复
yanqlv(maomao) 说的对,javaw和java是类似,唯一区别是用javaw执行Java程序时不会显示出控制台(就是那个DOS窗口)。

至于双击执行问题,可以进行以下操作:

去Windows文件夹选项,选择“文件类型”标签选项卡,找到扩展名为jar的文件定义,选中后点“高级”按钮,如果里面有“open”操作,如果没有新建一个,双击那一条记录,在执行程序里写上
"E:\JBuilderX\jdk1.4\bin\javaw.exe" "-jar" "%1" 或者
"E:\JBuilderX\jdk1.4\bin\java.exe" "-jar" "%1"

其实就是指向jdk或jre中的java或javaw程序,传参-jar

然后点确定就应该能执行了。

如果还不能执行,到“我的电脑”-右击-属性-高级-环境变量
新加一个变量叫“JAVA_HOME”,值为“.”(注意不包括引号)

如果做了以上操作还不成的话,那我就不清楚了
hailun 2005-11-12
  • 打赏
  • 举报
回复
能否给讲一下这些都是什么意思


Manifest-Version: 1.0
Main-Class: test
Classpath: .\test.jar


jar cvfm test.jar manifest.mft *



yanqlv 2005-11-12
  • 打赏
  • 举报
回复
java和javaw都可以,
你写的那个javaw应该写成javaw -jar test.jar
至于直接双击运行,
打包后,编辑manifest.mf
加入一行:
Main-Class: test
冒号后面有个空格!
Mervyn 2005-11-12
  • 打赏
  • 举报
回复
javaw -jar
believefym 2005-11-12
  • 打赏
  • 举报
回复
楼上的方法没错
估计出问题是因为没有加"-jar"参数
zy_11198 2005-11-11
  • 打赏
  • 举报
回复
楼主的JAR包能否传上来看一下,我的情况也有类似的,但大多都是好的,直接双击就可以运行的,只有少一些不能~我们是否可以总结一下是具体什么情况???
believefym 2005-11-11
  • 打赏
  • 举报
回复
楼上的也不是答案,
继续顶。。。
logomgc 2005-11-10
  • 打赏
  • 举报
回复
写一个manifest.mft的文件放在要打包的根目录下,格式如下:
Manifest-Version: 1.0
Main-Class: test
Classpath: .\test.jar

每行末尾不能有空格,不能有空行。
然后进入DOS:
jar cvmf test.jar manifest.mft *
===========================================================
这里最后一句写错了,应该是jar cvfm test.jar manifest.mft *
这样就是你要的效果了,双击可以运行.
fengxin09 2005-11-10
  • 打赏
  • 举报
回复
顺便再说一句
我用批处理方式来运行都是可以的
但是用双击或者javaw运行时就会出这个错误提示
fengxin09 2005-11-09
  • 打赏
  • 举报
回复
高人还未出现
等待中
zdkjob 2005-11-09
  • 打赏
  • 举报
回复
路过,等答案



====CSDN 小助手 V2.5 2005年11月05日发布====
CSDN小助手是一款脱离浏览器也可以访问Csdn论坛的软件
界面:http://blog.csdn.net/Qqwwee_Com/archive/2005/11/05/523395.aspx
下载:http://szlawbook.com/csdnv2

believefym 2005-11-09
  • 打赏
  • 举报
回复
关注一下...
believefym 2005-11-09
  • 打赏
  • 举报
回复
楼上的不是答案
yyy 2005-11-09
  • 打赏
  • 举报
回复
写一个manifest.mft的文件放在要打包的根目录下,格式如下:
Manifest-Version: 1.0
Main-Class: test
Classpath: .\test.jar

每行末尾不能有空格,不能有空行。
然后进入DOS:
jar cvmf test.jar manifest.mft *

运行时,如果是图形界面的,双击点击即可执行;如果是文本界面,
java -jar test.jar

Main-class: (你的可执行类)
Class-Path: (需要引用的包)
believefym 2005-11-09
  • 打赏
  • 举报
回复
我也碰到同样的问题
好像看到过一个帖子说是没有装jre的缘故,不知道具体怎么样的
mainclass不是问题,dos下都能运行了都
yanloveyan2004 2005-11-09
  • 打赏
  • 举报
回复
jar的MANIFEST.MF中写
Manifest-Version: 1.0
Main-Class: com.test.MainFrame
pdvv 2005-11-09
  • 打赏
  • 举报
回复
我一般是建立批处理
fengxin09 2005-11-09
  • 打赏
  • 举报
回复
在线等
加载更多回复(1)

62,625

社区成员

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

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