我运行的是ActivePerl 5.24 build 2401 x64。以前,当我在Windows7中运行这个版本和版本时,当遇到致命错误时,我的脚本会指出行和原因(例如“文件中的行太长,第11行”),我正在运行它的命令提示符。这对我来说找出哪里出了问题并调试文件是很棒的。
我最近迁移到了Windows10系统。但是现在,每当在脚本中遇到错误时,都会弹出一个窗口,显示"Perl命令行解释器已停止工作“。没有额外的信息,这是一个令人头疼的问题,因为我不知道脚本在哪里出错和崩溃。
需要说明的是,Perl已正确安装在Windows10系统上。当我修改脚本和/或数据文件时,一切都运行得很顺利。只有当出现错误时,它才会显示此消息,并且它对帮助我找出问题所在毫无用处。
我已经习惯于重新连接我的旧系统,并从那里运行任何脚本,因为否则几乎不可能弄清楚发生了什么。
有什么建议吗?有没有办法在Windows10的命令提示符下打印错误消息,而不是弹出一条无用的消息?或者,我可以使用其他调试设置吗?我尝试使用perl -d,但是调试器对我的水平来说有点太多了。
根据记录,我尝试使用最新的StrawberryPerl 5.24版本,但遇到了完全相同的问题。
发布于 2017-01-17 16:59:05
问题是perl正在消亡,并且永远不会达到错误条件。
很难确定,但我猜您拿到的是一个旧的、有问题的perl安装,而不是您认为的那个。这就解释了为什么安装Strawberry Perl没有任何变化。
尝试输入
where perl
并查看列表中是否有多个条目。顶部的条目是将响应perl
命令而运行的条目
找到要运行的perl.exe
文件,并在命令行上显式指定它,如下所示
C:\path\to\perl.exe
(显然,给出了正确的路径)
还要检查perl和PERL5LIB
的值,以确保perl没有选择从不同版本构建的模块。
https://stackoverflow.com/questions/41689798
复制相似问题