用jar包运行带GUI的java游戏
这是从某论坛下载的java游戏demo,由于年代久远,所以没有记下出处。重要的是,这是一个带GUI的java程序。
链接: https://pan.baidu.com/s/1LjQ2bQPXvW-ti7LvlBdu6A 密码: 1tsf (包含源代码)
首先演示如何直接运行这游戏,因为这里使用的是命令行,所以要在环境变量中配置好jdk的路径。
可以看到Main类的相对路径为.\org\loon\game\simple\sokoban\main
但是要运行Main.class,还得在名为SokobanSimple的目录下,因为以上的路径包含着Main的包名,java用包(package)来标识不同的命名空间,在操作系统中就是文件夹,所以Main类的完整名称应该为org.loon.game.simple.sokoban.main.Main
在SokobanSimple目录下打开命令行,win7系统可以直接用shift + 鼠标右键点击目录中空白地方就会弹出“在此处打开命令窗口”的选项;也可以运行cmd.exe进入命令行,再进入SokobanSimple目录。
在命令行中运行:java org.loon.game.simple.sokoban.main.Main
即可打开游戏。
但是想直接用鼠标双击的方式打开游戏,就像打开其他语言写的可执行文件,那该怎么办呢?
首先找到游戏的主程序名,也就是完整的类名:org.loon.game.simple.sokoban.main.Main 记住它!!!
接着,还是在SokobanSimple里打开命令行窗口。
键入命令: jar -cvf SokobanSimple.jar image org
(有关jar命令的详解请在命令行里键入:jar -help)
将image和org这两个包压缩成jar包成功!
这时可以看到SokobanSimple里有一个jar包。
但是我们双击它时发现游戏还是没有运行起来。
这是因为jar包中有个配置信息还没写,这配置信息用来表示jar中的主类。
接下来用压缩工具查看jar包。打开META-INF文件夹,用记事本打开一个叫MANIFEST.MF的配置文件,
并在下面一行添加一条配置信息: Main-Class: org.loon.game.simple.sokoban.main.Main
格式为 Main-Class:(这里有一个空格)完整主类名 这里的主类名即是org.loon.game.simple.sokoban.main.Main
若是可以的话,直接在压缩包里保存修改,如下图。
接下来双击SokobanSimple.jar,可以运行了!