在寫一個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中編輯"
"code-runner.runInTerminal": true,
這是讓code runner執行代碼時在終端執行,不在輸出那邊輸出。