如何用Eclipse调试Perl应用程序

如何用Eclipse调试Perl应用程序,第1张

eclipse调试perl应用程序需要安装perl编译插件。

安装步骤:

1、启动Eclipse,Eclipse中, 选择 Help 菜单

2、选择 Software Updates 菜单项,或者,选择 Install New Software 菜单项

3、输入网址  >

4、选择搜到的EPIC插件,点击Next,Next   安装之后重启Eclipse。

步骤:

启动Eclipse,Eclipse中, 选择 Help 菜单

选择 Software Updates 菜单项,或者,选择 Install New Software 菜单项

输入网址  >

选择搜到的EPIC插件,点击Next,Next   安装之后重启Eclipse

可以使用两种方法:

1.require "xxxpl";

2.use xxxpm;

加入require或者use在perl中相当于将文件xxxpl/pm整个文件都添加到调用它的文件中;

例如:

gettimepl

#!/usr/bin/perl

print "gettime is 2011-07-25 14:40:10\n";

showtimepl

#!/usr/bin/perl

require "gettimepl";

print "get time ok\n";

则执行showtimepl会显示:

gettime is 2011-07-25 14:40:10

get time ok

perl 的图形有两种玩法, Tk 和 Tkx Tk 是纯 Perl 的, 但能用的 widget (即那些 button, menu, scrollbar )比较少; Tkx 则需要你先装有 Tcl/Tk , 但能用的 widget 比较多 一个最简单的例子就是

use Tk; # 导入 tk 模组

use strict;

my $mw = MainWindow->new; # 创建窗口

my $labelObj = $mw->Label(-text => 'Hello, world!'); # 创建一个 label 物件

$labelObj ->pack; # pack() 是将物件程现的方法, 你再翻翻书, 还有 grid() 和 place() 的风格

$mw->Button(

-text => 'Quit',

-command => sub { exit },

)->pack;

MainLoop; # 每个 tk 程序都要等到呼叫 MainLoop 才会出现

最後, 你还得知道一个(差不多)每个物件都会的方法, 叫 configure, 你会以此对物件进行重新定义, 或附加设定

1: 检查你的系统是否安装了perl 解释器。perl --help

2: 如果安装了, 就perl pl 脚本。 就可执行。

没有安装,到>

有很多命令在命令行可以执行的,但是不能直接放入perl中执行,需要对特殊字符进行转义。$ 前面都加上\试试,不然$3会被当作是perl中的变量。

我建议最好是用perl直接写比较好,实在不会写,你把awk '($3==""&&$6>=50)

($3!=""&&$6>=20)' file1 >file2 这句话写到一个shell脚本里面,执行成功后,然后将这个shell脚本放入perl的system中执行。

调试通过的、确保正确的程序代码如下,请粘贴程序,输入可能会发生错误:

my %ARR1,%ARR2;

my $s,$k,$v,$i;

#读文件1

$k='';

$v='';

open(FD,'1txt');

while($s=<FD>){

$s =~ s/^\s+|\s+$//g;

if ($s =~ /^>/){

(undef,$k)=split(/\s+/,$s);

}else{

$v=$s;

$ARR1{$k}=$v;

}

}

close(FD);

#读文件2

$k='';

$v='';

open(FD,'2txt');

while($s=<FD>){

$s =~ s/^\s+|\s+$//g;

if ($s =~ /^>/){

(undef,undef,$k)=split(/\s+/,$s);

}else{

$v=$s;

$ARR2{$k}='|'$v;

}

}

close(FD);

#输出结果

foreach $k (keys(%ARR2)){

print "$k\n";

$i=1;

foreach $v (split(/\|/,substr($ARR2{$k},1))){

printf("I%03d%s\n",$i,$v);

printf("E%03d%s\n",$i,$ARR1{$k});

$i++;

}

}

运行过程:

E:\TEMP\文件>type 1txt

> 1_NC_008394

ATGTCGTCGCG

> 2_NC_008394

ACTCGCCCC

E:\TEMP\文件>type 2txt

> INTRON_1 1_NC_008394

gttcgcctactcc

> INTRON_2 1_NC_008394

gtgagttaattct

> INTRON_1 2_NC_008394

gtcagcattgc

E:\TEMP\文件>apl

1_NC_008394

I001gttcgcctactcc

E001ATGTCGTCGCG

I002gtgagttaattct

E002ATGTCGTCGCG

2_NC_008394

I001gtcagcattgc

E001ACTCGCCCC

E:\TEMP\文件>

打开是什么意思???

运行吗,那perl可以下面这样调用exe文件:

system("routeexe print");

打开查看内容吗,那么perl可以使用open打开任何文件:

open(FD,"abcexe");

以上就是关于如何用Eclipse调试Perl应用程序全部的内容,包括:如何用Eclipse调试Perl应用程序、perl如何调用其他的perl文件、如何使用Perl语言在windows下编写图形化窗口程序啊,求大师,最好给个例子瞅瞅等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9790245.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存