VSCode PlantUML插件配置代理后仍无法加载远程include资源如何解决
排查&解决方法
修正代理参数的引号格式
Windows环境下Java解析命令行参数时不会自动剥离单引号,会导致代理地址识别错误,修改配置为:"plantuml.commandArgs": [ "-Dhttp_proxy=http://localhost:3128/", "-Dhttps_proxy=http://localhost:3128/" ]不需要给参数值加引号,如果是双引号包裹的JSON值内部要加引号需做转义处理。
确认渲染模式为本地渲染
检查插件的plantuml.render配置项,确保值为Local。如果使用远程PlantUML服务器渲染,本地配置的代理参数不会生效,拉取远程资源的请求由远端服务器发起,无法走你本地的代理通道。改用本地C4库引入
直接将C4-PlantUML的相关puml文件下载到本地项目目录,改用相对路径引入,完全规避网络请求问题:!include ./lib/C4_Deployment.puml验证Java执行环境配置
首先确认插件使用的Java路径和你命令行调用的Java是否一致,可在plantuml.java.command配置项指定正确的Java可执行文件路径。再用命令行直接调用PlantUML渲染测试文件,确认代理参数是否生效:java -Dhttps_proxy=http://localhost:3128/ -jar <plantuml.jar本地路径> test.puml若命令行可正常渲染,说明插件参数未正确加载,可尝试重启VSCode后再次测试。
处理HTTPS证书校验问题
公司网络如果做了HTTPS中间人代理,Java默认信任库未导入公司根证书会导致连接失败,可临时添加参数忽略证书校验验证是否是该问题:"plantuml.commandArgs": [ "-Dhttp_proxy=http://localhost:3128/", "-Dhttps_proxy=http://localhost:3128/", "-Dplantuml.ssl.allowall=true" ]生产环境建议将公司根证书导入Java信任库,避免安全风险。
内容的提问来源于stack exchange,提问作者Wurzelseppi
相关产品推荐
相关产品推荐

