使用批处理运行jar控制台程序

来源:互联网 发布:苹果弹琴软件 编辑:程序博客网 时间:2024/06/11 04:51
我们不希望在命令行中执行jar文件,因为太麻烦, 
  在安装了虚拟机(java(TM))的机器上可以使用虚拟机(java(TM))运行jar文件,双击即可运行, 
  如果是图形化界面,使用虚拟机(java(TM))很方便, 
  不过这种方式对于控制台程序来说, 
  会导致程序运行时不会弹出命令行窗口,无法进行输入输出, 
  也就是点了之后没反应, 
  为了解决这个问题,可以使用如下批处理文件解决, 
  假如要运行的是一个123.jar文件,文件位于C盘Users目录下, 
  则可以用文本文件保存以下内容: 
  java -jar C:\Users\123.jar 
  pause 
  将文件名改为run.bat 

  双击run.bat文件即可, 
  不过这样的话每一个jar文件都需要一个bat文件。 
  
  可不可以偷一下懒呢? 
  当然可以。 
  用文本文件保存以下内容: 
  java -jar %1 
  pause 
  将文件名改为run.bat 
  随便找一个jar文件, 
  右键-打开方式-选择默认程序-浏览(找到这个run.bat文件)-确认, 
  如果在很长一段时间内你都只想写控制台程序, 
  那么你可以将其作为jar文件的默认打开方式, 
  以后随便双击哪个jar文件都可以自动使用这个bat文件来运行, 
  其实有心人可以发现,所谓批处理就是把命令行的命令写到文件中, 
  形成一个批处理程序,是程序,就可以成为windows系统支持的默认打开方式, 
  就不用那么麻烦的打开命令行了。 
  
  使用这种方法运行jar文件,即使加上@echo off也一样会弹出命令行窗口, 
  如果运行图形化界面的jar文件,旁边摆着一个命令行窗口会很不爽, 
  呵呵,所以对于图形化界面的jar文件,还是用虚拟机(java(TM))打开吧。 
  
  有些人比较贪心比较懒,不仅要求双击就可以运行jar程序, 
  还要求能够识别图形化界面和控制台程序,自动选择打开方式。 
  首先,判断一个jar文件是控制台程序还是图形化界面程序就是一个问题, 
  其次,windows系统也不支持同样的文件格式使用两种不同的默认打开方式, 
  最多在打开方式列表里面多加几项罢了。 
  
  我觉得可能的方式是: 
  1.写一个程序来判断一个jar文件是控制台程序还是图形化界面程序, 
  2.由这个程序分情况调用java(TM)或者run.bat来运行jar程序。 
  
  顺便说一句,没有安装运行环境或者环境变量配置错误的孩子, 
  使用这种方法也不能解决问题, 
  归根结底,都是在java虚拟机(Jvm)上运行。
0 0