在写一个Java项目的时候,源代码保存在项目的src下的包中,打开包
单击右键使用run code(这个功能是code runner)提供的,发生以下错误
而且此时文件头部有package名字:
注意,此时是编译运行单个文件。。
解决办法:
方法一:去掉头部的package一行,此时虽然会报错,但run code可以正常执行。
方法二:在当前包内使用javac编译当前程序
再在最外层包的那一层目录运行test,而且文件之间要用 . 分隔开
成功。
方法三:极为推荐的一种方式:
不使用code runner提供的运行方式,安装插件debugger for Java
在当前要运行的java程序中右键
Run Java即可正常编译运行
如果想要继续使用code runner编译运行程序,按我所知,单个文件利用方法二的办法执行就可以了。
如果出现多个文件编译的情况,比如说下图我在sortCompare.java中调用了其他类的方法。这个时候编译单个文件是会报错的。
报错类似下面这样:
这个时候需要我们编译所有的文件,可以使用Javac *.java编译当前包内的所有文件。
之后再返回最外层包的那一层利用目录运行sortCompare.class文件即可。如上图所示。
最后,搞了好久的code runner执行乱码的问题,
1) 首先到用户设置中搜索设置Code-runner: Language ID To File Extension Map
点击"在settings.json中编辑"
2)添加如图所示代码, 保存即可
"code-runner.runInTerminal": true,
这是让code runner执行代码时在终端执行,不在输出那边输出。