首先我想问大家  jar包是可以双击运行吗??? (怎么有人说必须要第三方工具)说正题
我做了一个java的小程序 application。 编译运行没问题
使用
jar cvfm bomb.jar manifest.mf *.*  打的jar包其中的manifest.mf的内容是
Manifest-Version: 1.0
Created-By: 1.5.0_08 (Sun Microsystems Inc.)
Main-Class: Main
之后用命令 java -jar bomb.jar 运行也没问题.  但是双击jar包 就报错"could not find the main class.Program will exit."  我查阅了网上很多的文章,好像说的和我做的差不多.零零碎碎折腾2天了,就是不能双击运行所以在这里向大家求救,呵呵.是不是我什么地方没弄对啊?

解决方案 »

  1.   

    别告诉我你的运行类的名字是Main
      

  2.   

    兄弟你要双击运行,需要这样做,建立一个bat文件,例如 run.bat然后在里面写上java -jar bomb.jar  ,保存。
    然后双击run.bat。那不就OK了撒,呵呵。你双击报错,那是因为你双击不是在执行java这个命令,懂了么?
      

  3.   

    Main-Class: Main
    ??1 好奇怪,你为何不加上package呢?
    2 你的程序运行不需要任何额外的辅助类吗?
    3 manifest.mf  应该放在META-INF 目录下面
      

  4.   

    Main-Class: Main //这里是你的主类
    Main-Class:空格包名.Main //然后以回车结束!要光标移到下一行
      

  5.   

    双击感觉上是图形操作系统界面(如xp资源管理器)上的双击我的机器(xp)上双击jar和 java -jar的效果是一样的,可以尝试重新装一下jdk5或jdk6
      

  6.   

    我在网上看到 好像也是说装上jdk就能双击运行jar  我用的是1.5
    可是不行
    我的主类是 Main ,没有包
    我的jar文件之下 就是 META-INF 目录 和我的三个类 还有图片。其中Main是主类,调用另一个Bomb类 生成一个扫雷窗口。程序中除了我写的类,没有用到jdk之外的类。
      

  7.   

    我以上说的  都在 F:\javaexercise\bomb 路径下
    请问 如果加包名该如何加呢或者不加包名  是不是我这个需要在特定的路径下才能运行呢? 请大家赐教
      

  8.   

    首先可以肯定安装了jre后。jar是可以双击运行的。你可以先用工具帮你打包一个,如果能运行,再自己打包一个,看看有什么差别。
      

  9.   

    在window写个bat文件,内容类似如下:java -cp .;./lib/log4j-1.2.9.jar;./lib/sqljdbc.jar;Test.jar Test
    pause在linux写个sh文件,内容类似如下:#!/bin/sh
    nohup java -cp .:./lib/log4j-1.2.9.jar:./lib/sqljdbc.jar:Test.jar Test> /dev/null &上面的路径有包括一个lib文件夹,第三方库都放在lib下。注意:在window下是分号格开的,在linux是冒号格开的。
      

  10.   

    shift+右键点击.jar文件,在打开方式里选jvm
      

  11.   

    好了 问题解决了。谢谢大家的帮助。问题解决方法是 重装了一下jre。看到这个结果大家不会想打我吧呵呵 给分啦
      

  12.   

    我建了一个bat文件,打开了jar包,但是显示的时间太短了,怎么让它显示的时间长点啊