如何让Eclipse/EPIC停止警告;使用未初始化值$ENV{whatever}";在我的perl脚本中?

如何让Eclipse/EPIC停止警告;使用未初始化值$ENV{whatever}";在我的perl脚本中?,eclipse,perl,warnings,initialization,Eclipse,Perl,Warnings,Initialization,这是EPIC第一次在Perl脚本中遇到特殊的%ENV变量时出现在Eclipse文本编辑器中。 我没有在这个环境中运行任何东西,我只是希望警告消失 我在“运行配置”部分闲逛,但这似乎没有帮助 更新1:所有这些答案都是关于更改代码的,这是不必要的。是的,如果我取消设置环境变量,我可以在命令行上得到相同的错误。但是我想在Eclipse中定义环境变量,以匹配正常的命令行环境,从而避免出现警告。我曾尝试在Eclipse的“运行配置”中定义它,但似乎没有效果 我还尝试在~/.bashrc和相关位置设置变量,

这是EPIC第一次在Perl脚本中遇到特殊的%ENV变量时出现在Eclipse文本编辑器中。 我没有在这个环境中运行任何东西,我只是希望警告消失

我在“运行配置”部分闲逛,但这似乎没有帮助

更新1:所有这些答案都是关于更改代码的,这是不必要的。是的,如果我取消设置环境变量,我可以在命令行上得到相同的错误。但是我想在Eclipse中定义环境变量,以匹配正常的命令行环境,从而避免出现警告。我曾尝试在Eclipse的“运行配置”中定义它,但似乎没有效果

我还尝试在~/.bashrc和相关位置设置变量,并为Eclipse创建一个设置变量的启动脚本。所有这些都没有修正警告

我可以通过右键单击并选择“源”,然后选择“清除所有EPIC标记”使警告消失,但下次更改文件时,警告会再次出现


更新2:如果我在运行配置中定义了环境变量,然后运行脚本,那么它将通过这些行。但是,在我编辑时,文本编辑器窗格中仍会显示一条弯曲的红色下划线和一条警告——我想消除这条警告。

不确定这是否有帮助,但请尝试添加:

our %ENV
…在首次使用%ENV之前


[编辑:我假设相关的环境变量实际上已定义,并且此错误来自IDE。仔细想想,这可能是一个糟糕的假设。]

在启动之前定义环境变量,或者修复代码,使其不会发出警告。如果包含整个警告,以便读者知道它来自何处,您可能会得到更多有用的建议。

当启用警告并尝试使用未定义的值时,在任何其他上下文中也会发生这种情况

$ perl -we 'print $ENV{NOT_DEFINED}'
Use of uninitialized value in print at -e line 1.
一些解决方案是

(1) 在使用变量之前定义它

$ perl -we '$ENV{NOT_DEFINED} //= ""; print $ENV{NOT_DEFINED}'
(2) 使用
|
/
运算符替换变量的“默认”值

$ perl -we 'print $ENV{NOT_DEFINED} // ""'
(3) 禁用特定警告

$ perl -we 'no warnings "uninitialized"; print $ENV{NOT_DEFINED}'
(4) 禁用所有警告

$ perl -we 'no warnings; print $ENV{NOT_DEFINED}'
(不要这样做)

因为这是Perl,所以还有其他几种方法


在Perl中,实际上我认为这在当前是不可能的,请参见此和或将
$var//“default”
替换为
定义的($var)$变量:“默认值”
,即。。。好吧,我想有很多微妙的不同,但实际上是相同的。