Perl编译时语法错误-表达式中不允许“使用”

时间:2019-06-07 17:34:51

标签: macos perl perlbrew

因为我是Perl的新手,所以请耐心等待,但是我在use语句的编译中遇到了一个错误,但是我不确定为什么我会在那儿得到一个。我在Mac Sierra上使用perlbrew。 perl版本是5.26.1。

我不太确定从哪里真正开始。我做了一点研究,发现唯一接近我需要的是无效的shebang线,我没有使用它。我确实尝试了有效的shebang线而没有任何变化。

我确实在违规行中添加了注释,以查看会发生什么,而在下一行中它只是失败,所以这是我的use语句。

use warnings;
use strict;

# Lib Folders;
use lib "/Users/user/perl5/lib/perl5/darwin-thread-multi-2level"

# Load Modules
use DBI;
use DBD::MariaDB;
use Text::CSV;
use Excel::Writer::XLSX;
use Time::Piece;
use Log::Log4perl qw(get_logger);

由于我无法进行编译,因此无法验证除此以外的其他功能是否有效。我不知道为什么会导致错误。

如果我正确编写其他所有内容,我会期望另一个编译错误或编译成功。

"use" not allowed in expression at report.pl line 8, at end of line
syntax error at report.pl line 8, near "use DBI"
BEGIN not safe after errors--compilation aborted at report.pl line 9.
Command terminated with non-zero status.
Command [perl report.pl] terminated with exit code 255 ($? = 65280) under the following perl environment:
Current perl:
  Name: perl-5.26.1
  Path: /Users/user/perl5/perlbrew/perls/perl-5.26.1/bin/perl
  Config: -de -Dprefix=/Users/user/perl5/perlbrew/perls/perl-5.26.1 -Aeval:scriptdir=/Users/user/perl5/perlbrew/perls/perl-5.26.1/bin
  Compiled at: Jun  4 2019 12:12:08

这是我运行perlbrew exec perl report.pl时终端给我的东西。我一定错过了一些东西,但我不确定到底是什么。

2 个答案:

答案 0 :(得分:4)

use lib "..."行的末尾缺少分号。

答案 1 :(得分:3)

您在第5行的末尾缺少分号。

调试错误消息时,一个好的通用规则是检查报告错误发生的行之前紧接的行。