Sublime Text中运行JAVA程序需要输入数据的问题

一般情况下,在ST里面运行一般的JAVA程序只需在jdk的bin目录里面添加一个runjava.bat文件,代码如下图

@ECHO OFFcd %~dp1ECHO Compiling %~nx1…….IF EXIST %~n1.class (DEL %~n1.class)javac %~nx1IF EXIST %~n1.class (ECHO ———–OUTPUT———–java %~n1)

然后在ST安装目录的Packages文件夹,找到Java.sublime-package这个文件【用压缩文件打开,我用的WinRAR】,然后修改里面的Javac.sublime-build文件,修改成如下图:

{"shell_cmd": "runJava.bat \&;$file\&;","file_regex": "^(…*?):([0-9]*):?([0-9]*)","selector": "source.java","encoding": "cp936"}

编码cp936是为了解决程序中有中文而导致的各种问题

但是,,,上面也说了,按照上面方法设置后只能运行一般的java程序,当遇到程序运行过程中需要手动输入数字的情况时,,ST编辑器就会报错而导致无法运行,这个问题我在网上搜索了很久也没有搜索到让人立马解决的办法,正当我准备放弃ST的时候,搜索了大量资料,终于找到了解决办法,然后很没良心的立马去把刚刚下载安装破解的EditPlus给卸载了。。。=_=解决方案:Tool->Build System->New Build System,然后写入以下代码:

{"cmd": ["javac","-encoding","gbk","-d",".","$file"],"file_regex": "^(…*?):([0-9]*):?([0-9]*)","selector": "source.java","encoding":"gbk","variants":[{"name": "Run","shell": true,"cmd" : ["start","cmd","/c", "java ${file_base_name}&pause"],"working_dir": "${file_path}","encoding":"gbk"}]}

另存为Java.sublime-build,注意图中的红色标记的地方,可以写成gbk或者cp936都是可以的,这三个地方要统一,不然又会出现莫名其妙的中文编码错误问题,保存后再按CTRL+B就是执行javac命令,按CTRL+SHIFT+B就会执行java命令,弹出熟悉的CMD窗口,然后就可以很顺手的输入数据等等了,保存以后这个文件默认是保存在C:\Users\Administrator\AppData\Roaming\Sublime Text 3\Packages\User这个目录下的,可是撸主有强迫症啊有木有,放在这里看着就是不爽不和谐啊,于是就把Java.sublime-build移动到了Packages文件夹下的Java.sublime-package这个文件里面,保存,然后就终于解决了心头这个疙瘩了,呵呵

希望能帮到需要的朋友,大家共同学习~~~

上面新建的那个Build文件还是对中文支持有问题,就是如果用ST新建java文件,运行有中文的程序的时候就会有问题,然后现在重新修改一下,可以用了,代码如下:

{"cmd": ["javac", "${file}", "-encoding", "UTF-8"],"file_regex": "^(…*?):([0-9]*):?([0-9]*)","working_dir": "${file_path}","selector": "source.java","encoding": "cp936","shell": true,"variants":[{"name": "Run","cmd": ["cmd", "/c", "javac", "${file}", "-encoding", "UTF-8", "&&", "start", "cmd", "/c", "java ${file_base_name} & echo. & pause"]},]}

你说只有有缘人才可以取下,我看着你手中的戒指,想做你的有缘人,

Sublime Text中运行JAVA程序需要输入数据的问题

相关文章:

你感兴趣的文章:

标签云: