VSCode中使用Source Action生成toString()时提示“command 'nbls.java.generate.toString' not found”
别担心,我之前也碰到过类似的问题,咱们一步步来排查解决:
先检查Java插件的状态:这个
nbls.java.generate.toString命令是和NetBeans语言服务相关的Java功能,你得确保VSCode里装了官方的Java工具插件,比如Language Support for Java by Red Hat或者包含它的Java Extension Pack。打开扩展面板(快捷键Ctrl+Shift+X),搜索Java相关插件,看看它们是不是处于启用状态——要是没装就赶紧装上,禁用了就重新启用。修复或重装插件:如果插件已经装了还是报错,大概率是插件文件损坏了。你可以先把对应插件禁用再启用试试,要是不行就直接卸载后重新安装。操作很简单:在扩展面板找到插件,点旁边的齿轮图标,选禁用/卸载,重启VSCode后再重新安装插件。
确认项目的Java环境配置:有时候项目没被正确识别为Java项目,或者JDK路径配置错了也会出这问题。看看VSCode左下角有没有显示当前的Java版本,要是没显示,点击那个区域选择正确的JDK路径;也可以在项目的
.vscode/settings.json里手动配置java.home参数,指向你的JDK安装目录。清除VSCode缓存:缓存文件出错也可能导致这类奇怪的命令找不到问题。关闭VSCode后,找到对应的缓存目录(Windows是
%APPDATA%\Code\Cache和%APPDATA%\Code\CachedData,Mac是~/Library/Application Support/Code/Cache和~/Library/Application Support/Code/CachedData),删掉里面的内容,再重启VSCode试试。排查插件冲突:如果你装了多个Java相关的第三方插件,可能会和官方插件冲突。试着暂时禁用其他非官方的Java插件,只保留Java Extension Pack,然后重启VSCode再尝试生成toString()功能。
备注:内容来源于stack exchange,提问作者Ottomid

