Eclipse调试Perl应用程序

Eclipse调试Perl应用程序

ID:43015224

大小:126.51 KB

页数:29页

时间:2019-09-24

Eclipse调试Perl应用程序_第1页
Eclipse调试Perl应用程序_第2页
Eclipse调试Perl应用程序_第3页
Eclipse调试Perl应用程序_第4页
Eclipse调试Perl应用程序_第5页
资源描述:

《Eclipse调试Perl应用程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、如何用Eclipse调试Perl应用程序开始之前  本教程将介绍Eclipse的EPIC插件提供的调试功能,该插件提供了功能丰富的调试环境——可为EPICPerl开发环境所用且与此开发环境相集成。本教程假设读者了解Eclipse环境,并且有使用Perl的经验。  关于本教程  EPIC结合了两种有助于Perl应用程序测试流程的系统:RegExp和调试器。RegExp是一个测试Perl正则表达式的接口。正则表达式是许多Perl应用程序的主要组成部分,但保证表达式的正确性是一个非常复杂的问题。使用EPI

2、CRegExp视图,您可以根据已知数据检查结果,测试并修改正则表达式。  EPICPerl调试器是一种较为传统的工具,完全集成于Eclipse环境之中。除测试本地化脚本外,EPIC调试器还可用于调试Web及远程执行Perl脚本,因此是多种环境下的理想工具。  本教程将介绍如何导入和移动大型应用程序、如何简化应用程序视图以使代码更易于理解,从而也更易于调试。另外还会介绍EPIC调试环境,它完全位于Eclipse内部,为标准脚本、CGI脚本和正则表达式提供了一个完整的调试环境。  前提条件  要开始使用

3、EPIC,需要满足以下前提条件:  EclipseV3.1或3.0  Java™技术V1.3、1.4或更高版本  PerlV5.8.6或更高版本。绝大多数UNIX®、Linux®安装及MacOSX中都包含Perl。Windows®上使用ActivePerl。Eclipse的EPIC插件  PadWalkerPerl模块。ActiveState版本也可。  传统Perl调试技术  在介绍EPIC之前,让我们首先来看看Perl所使用的传统调试技术,这些技术随时可用,并且确实有一些优点。但它们也有着自身的

4、局限性。理解其局限性有助于您理解为何需要一种更好的调试环境。  Perl中的调试简介  如果您问一位典型的Perl程序员怎样调试其应用程序,他多半会告诉您他只是使用简单的输出语句,在程序执行时转储信息。例如,您可向循环中添加一条简单的语句,来输出您正在计算或处理的值,如清单1所示。清单1.使用输出语句进行调试 my $sth = $dbh->prepare($query);  $sth->execute();  while(my $row = $sth->fetchrow_hashref()) { 

5、  print STDERR Dumper($row);    printf('%s, %s (%s)
',       $row->{album},       $row->{artist},       $row->{genre}); } $sth->finish();   在这种情况下,您已输出了从数据库(MySQL)载入到STDERR的行转储。STDERR使用起来非常方便,这是因为在UNIX主机上,您可将STDERR的输出重定位到日志文件,同时使其他输出照常定位到标准输出。  示例中

6、的Dumper()函数会实际输出任何变量的结构,包括嵌入式和嵌套的数组、散列及其他内容。输出格式与您手动生成的结构形式相同。此函数(Data::Dumper模块的一部分)非常有用,既可作为以适于人类阅读的格式输出变量的方法,也可用于写入一个能读回的结构,使用eval()可重新创建一个新变量。 事后调试  在应用程序运行时,利用输出信息的输出函数这种方式正是事后调试的一个例子。此时您并未实际监控应用程序的执行,也没有尝试找出应用程序运行过程中的问题,而是将信息转储出来,并等待执行完成。  在交互式调试

7、难以实现的情况下,这一特殊的调试方法广受人们的欢迎。例如,实时调试CGI应用程序基本上是不可能实现的,因为应用程序在远程服务器上执行,且由第二应用程序(Web服务器)执行。不可能实时监控脚本执行。  因此,事后调试有其用武之地,但也有一些显而易见的局限性。举例来说,在不更改代码的情况下,您无法监控任何变量,而一旦更改了代码,您就必须再次运行程序,以获得期望的输出。  同样,您无法逐行单步调试程序的执行。必须运行整个应用程序,除非您强行停止它。如果要跟踪函数调用和序列,就需要添加输出语句,以显示作出的

8、是怎样的决策,并显示顺序与序列,除此之外,别无他法可监控或获得信息。  实时调试  有多种实时调试系统(Perl自带的调试器就是其中之一),您可从使用-d命令行选项入手(参见清单2)。该命令行选项会启动一个交互式会话,通过此会话即可逐行单步调试、跳过代码段、监控变量和值,甚至在执行过程中修改值。清单2.使用Perl调试器 $ perl -d -e 0  Loading DB routines from perl5db.pl version 1.28 Editor su

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。