vscode如何通过Community Server Connectors配置tomcat?
发布于 作者:苏南大叔 来源:程序如此灵动~
使用vscode也可以开发javaweb项目,所以在vscode里面配置tomcat服务器,以便于开发javaweb。那么,如何在vscode里面配置tomcat服务器呢?本文使用的是Community Server Connectors插件来解决这个问题的。

苏南大叔的“程序如此灵动”博客,记录苏南大叔和计算机代码的故事。本文测试环境:win10,vscode@1.74.2,java@19.0.1,Community Server Connectors@0.25.7,tomcat@10.0.27。
本文默认您已经安装好了java和tomcat。如果您还没有安装,请参考:
https://newsn.net/say/tomcat.html
安装插件Community Server Connectors
安装red hat出品的Community Server Connectors插件。
该插件是在rsp-ui插件的基础上,针对tomcat的再次包装。

安装完成后,会在项目左侧下方生成一个servers的边栏。在这里对Community Server Connectors进行操作。

vscode识别添加tomcat服务器
在Community Server Connectors上,添加tomcat服务器,根据需要选择是使用本地的服务器,还是重新下载一个。剩下的就是添加服务器的界面,无需修改,直接确定即可。

修改配置文件
Community Server Connectors的配置文件的路径是:
C:\Users\<用户名>\.rsp\redhat-community-server-connector\servers但是不要直接修改这个文件,因为vscode关闭的时候,会再次覆盖对应的这些配置文件。
核心功能的配置项均来自于另外一个插件rsp-ui。可以配置的项目请参考:
修改配置的办法是,使用右键菜单。

特殊的vmoptions需要先修改第一个选项为true,才能生效。

部署代码
右键添加一个部署选型,部署一个deployment。根据需要选择是file(.war包)还是exploded(常规文件)。

设置好目录后,代码修改后。就需要根据需要,选择执行“publish server”。是不是很麻烦?根据rsp-ui的文档显示,其实这里有个自动部署的隐藏选项,设置后就不用每次“publish server”了。

"server.autopublish.enabled": "true",额外的结论
结论一:部署的问题,其实把root部署到程序员的项目代码目录上,不是更好么?就不用以deploy的名义复制来复制去了。(tomcat会对项目目录做意外的管理,其中包括删除项目目录。所以,这么做是方便但是很危险。)
结论二:同时只能运行一个tomcat,即使监听不同的端口,不同版本的tomcat也不能同时运行。
配置中文乱码问题【可选项】
启动服务器,停止服务器,就可能会在vscode的output里面显示中文乱码。
【方案一】chcp
常规上来说,是需要使用chcp来解决问题的,参考文字:
https://newsn.net/say/chcp-65001.html
但是,对于本文的需求实际情况来说,没有效果。
【方案二】修改logging.properties配置
使用chcp的各种手段无法解决。实际上,它读取的是日志输出。解决方案是修改<tomcat>/conf/logging.properties配置。重启vscode生效。
修改为gbk:
java.util.logging.ConsoleHandler.encoding = GBK或者直接注释掉【推荐】
# java.util.logging.ConsoleHandler.encoding = UTF-8tomcat的日志输出默认位置是:
<tomcat>/logs/【方案三】升级java版本号
貌似java@1.8就会出现tomcat+output乱码。但是最新的java@1.9就没有这个问题。所以...
相关文章
结束语
整体来说,如果您清楚自己和tomcat之间的故事的话。这个Community Server Connectors插件其实也并不是必须安装的,没有啥太特别的意义。更多经验文字,请点击查看: