【问题标题】:use 'perl module" not working as not able to add path to module in Epic使用“perl 模块”无法在 Epic 中添加模块路径
【发布时间】:2015-10-19 13:17:10
【问题描述】:

我的 Win 7 机器上安装了活动状态 Perl 5.20.2(32 位)。我正在为 Perl 使用 Eclipse Release (4.5.1) 和 Epic 插件。
我是第一次使用 PERl、Eclipse 和 Epic。

我的工作区和项目结构如下:

C:\SVN\BuildToolWorkspace -> 工作区路径
C:\SVN\BuildToolWorkspace\BuildToolPerlProj ->项目路径
C:\SVN\BuildToolWorkspace\BuildToolPerlProj\adsp2mk.pl -> Perl 文件
C:\SVN\BuildToolWorkspace\BuildToolPerlProj\adsp2common.pm -> Perl 模块

我在 Perl 主文件 adsp2mk.pl 和项目前面看到了红叉。 将鼠标悬停在代码上显示以下内容:

我将 Perl 包含文件夹/文件的路径添加为

当我关闭项目人员并再次打开它们时,路径消失了,我仍然有项目和文件内部的错误。

注意/更新:在阅读了我所做的 cmets 之后:

但是,即使在刷新之后,我仍然在第 35 行遇到错误。 关闭并打开 Eclipse 然后它就消失了。 但是,在导航器窗口中,我仍然在项目前面有红十字,并且脚本为

Q1) 这可能是由于语法检查发现的其他错误造成的吗? 我在脚本代码中没有看到任何红色波浪线表明这一点。
Q2) 为什么 refresh 没有删除第 35 行的错误,我不得不退出并重新打开 eclipse?

【问题讨论】:

  • 您尝试添加的包含路径看起来很可疑。您可以删除${project_loc}/ 并查看单击“添加到列表”后是否添加了路径吗?要查看是否使用了正确的包含路径,您可以创建一个简单的 Perl 脚本,它只执行 print "@INC" 并检查输出是否列出了正确的路径。
  • 注意:$FindBin::RealBin$FindBin::Bin 好得多,因为它也可以处理脚本的快捷方式。
  • ${project_loc}/"C:\SVN\BuildToolWorkspace\BuildToolPerfProj" 对你来说看起来像是一条有效的路径吗?对我来说不是。它结合了两种路径名约定,中间有一个驱动器号。
  • 还有引号。路径没有引号。
  • 添加了引号,因为我在一些帖子中读到如果完整路径有空间,最好添加引号。

标签: perl


【解决方案1】:

根据屏幕截图,您没有在列表中添加任何路径。您的列表是空白的。

根据截图,你正要添加一个垃圾字符串。

你要的路径是${project_loc}/BuildToolPerlProj[1],这次别忘了实际点击“添加到列表”。


  1. C:\SVN\BuildToolWorkspace\BuildToolPerlProj(不带引号)也应该可以,但由于路径在项目内,因此最好提供相对于项目的路径,如上所示。

【讨论】:

  • Q1) 它可能只在启动和更改文件时进行语法检查。 Q2) 不知道。它是否说明错误是什么?如果直到出现同样的错误,请尝试更改文件。
【解决方案2】:

您是否尝试将目录放入@INC?我认为您必须在 BEGIN 块中执行此操作。

【讨论】:

  • use lib 就是这样做的,这对于他们运行脚本时很好,但是 EPIC 的语法检查器不会检测到对 @INC 的编程更改,这就是为什么需要添加它的原因到项目。 OP 是在正确的轨道上,但没有达到目标。
猜你喜欢
  • 2021-05-12
  • 2020-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多