You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

远程SSH下VSCode Perl调试器环境变量缺失问题求助

Perl调试器环境变量缺失问题排查

本地为OpenSuse Leap 15.6系统,运行VSCode通过Remote - SSH扩展连接至Ubuntu 22.04远程实例,客户端与服务端均已更新。

此前多年使用Perl - Language Server and Debugger for Perl扩展无异常,近几周调试脚本时,脚本因环境变量缺失崩溃。排查发现调试器中仅能获取以下环境变量:

$VAR1 = 'PLSDI_REMOTE=127.0.0.1:13605';
$VAR1 = 'PERL5DB=BEGIN { $| = 1 ; require Perl::LanguageServer::DebuggerInterface }';
$VAR1 = 'PLSDI_SESSION=95bf6688-2283-4f55-b02e-ca37ae4d6027';
$VAR1 = 'PLSDI_OPTIONS=reload_modules';

PATH等关键变量缺失,导致反引号中的命令无法解析为可执行文件。但在VSCode终端或直接SSH连接服务器运行脚本时,环境变量完整。launch.json从未显式设置环境变量,此前运行正常,目前只能手动为每个launch.json配置添加环境变量,需排查环境变量突然缺失的原因。

版本信息

% code --version
1.92.0
b1c0a14de1414fcdaa400695b4db1c0799bc3124
x64
  • Remote - SSH版本:v0.113.1
  • Perl - Language Server and Debugger for Perl版本:v2.6.2

复现步骤

  • 安装VSCode
  • 安装Remote - SSH扩展
  • 连接至远程SSH实例
  • 安装Perl - Language Server and Debugger for Perl扩展
  • 在launch.json中添加调试配置:
{
    "type": "perl",
    "request": "launch",
    "name": "test.pl",
    "program": "/home/user/playground/test.pl",
    "reloadModules": true,
    "stopOnEntry": true,
}
  • 创建测试脚本:
#!/usr/bin/env perl

use strict;
use warnings;

use open qw(:std :utf8);

use Data::Dumper;

while (my ($k, $v) = each(%ENV)) {
    print Dumper $k . '=' . $v;
}
  • 运行调试配置,查看输出控制台,仅显示上述少量环境变量。

内容的提问来源于stack exchange,提问作者kos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 06:46:19