" Perl命令行解释器已停止工作"作为Windows 10中的常规错误消息

时间:2017-01-17 05:44:48

标签: windows perl activeperl

我正在运行ActivePerl 5.24 build 2401 x64。以前,当我在Windows 7中运行此版本和版本时,我的脚本在遇到致命错误时会在命令中指示行和原因(例如"行中的行太长,行11和#34;)提示我从中运行它。这对我来说很好,可以找出错误并调试文件。

我最近迁移到了Windows 10系统。但是现在,每当遇到脚本中的错误时,所发生的一切都会弹出一个窗口,说明" Perl命令行解释器已停止工作"。没有其他信息,这是一个痛苦的屁股,因为我不知道脚本在哪里出错和崩溃。

要明确,Perl已在Windows 10系统上正确安装。当我更正脚本和/或数据文件时,一切都在游泳。只有在显示此消息时出现错误,并且它无法帮助我找出错误。

我已经开始重新连接我的旧系统并从那里运行任何脚本,因为否则几乎不可能弄清楚发生了什么。

任何指针?我可以在Windows 10中在命令提示符下打印错误消息,而不是弹出无用的消息?或者我可以使用其他调试设置吗?我尝试使用perl -d但是调试器现在对我的级别来说有点太多了。

为了记录,我尝试使用最新的StrawberryPerl 5.24版本并遇到了完全相同的问题。

1 个答案:

答案 0 :(得分:0)

问题是perl正在死亡,并且永远不会达到错误条件

很难确定,但我猜你会选择旧的,错误的perl安装,而不是你认为的那个。这可以解释为什么安装Strawberry Perl显示没有变化

尝试输入

where perl

并查看列表中是否有多个条目。顶部的条目是为响应perl命令而运行的条目

找到要运行的perl.exe文件,并在命令行中明确指定,如下所示

C:\path\to\perl.exe

(显然,给出正确的路径)

同时检查PERLLIBPERL5LIB的值,以确保perl不会选择使用其他版本构建的模块