该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
一直在用sublime text来帮助自己学习java,使用时发现一个很严重的问题,只是本人菜鸟一个,弄了很久都解决不了。现在来求助各位大神。问题如下:
在sublime中编译运行简单的java程序完全没有问题,但是一旦遇到需要输入的时候 例如:
Scanner input=new Scanner(System.in);
int num=input.nextInt();
Sublime自带的控制带就会输出错误信息:
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:907)
at java.util.Scanner.next(Scanner.java:1530)
at java.util.Scanner.nextInt(Scanner.java:2160)
at java.util.Scanner.nextInt(Scanner.java:2119)
at xxx.main(xxx.java:14)
代码本身没什么问题,也就是说sublime的控制台不能像eclipse的控制台那样输入数据
其实sublime本身不能编译和运行java,需要改变javaC-sublime-build文件内容和在java jdk\bin文件夹下新建一个runJava.bat后才能正常编译运行。而在sublime用快捷键ctrl+b编译运行时没有cmd窗口
这是sublime text软件package文件夹下Java.sublime-package文件中javaC-sublime-build文件中的内容:
{
"shell_cmd": "runJava.bat \"$file\"",
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.java",
"encoding": "GBK"
}
下面是jdk\bin\文件夹下runJava.bat里的内容:
@ECHO OFF
cd %~dp1
ECHO Compiling %~nx1.......
IF EXIST %~n1.class (
DEL %~n1.class
)
javac -encoding utf-8 %~nx1
IF EXIST %~n1.class (
ECHO -----------OUTPUT-----------
java %~n1
)
不知道怎么解决这个问题,怎么样才能在ctrl+b后打开cmd窗口自动编译运行呢?