如何将空字符串从perl脚本传递到java文件作为命令行参数

时间:2019-01-16 16:16:44

标签: java perl

我有一个脚本order.pl,它有3个变量

$dbcount=$ARGV[0];
if($dbcount == ""){$dbcount = 196001;}

$Num_Batches =$ARGV[1];
if($Num_Batches == ""){$Num_Batches=1;}
print "batches:$Num_Batches\t";

$TimeStamp = $ARGV[2];
if($TimeStamp == ""){$TimeStamp = "";}

$DBFetch = 'java GetWOConfHold_Auto '. $dbcount." ".$TimeStamp ;
print "DBFetch:$DBFetch\n";
print "timestamp :$TimeStamp";
system($DBFetch);

这里的Java文件是GetWOConfHold_Auto.java,我想将dbcount和空字符串作为命令行参数发送到GetWoConfHol_Auto Java文件,但是

运行时显示

perl order.pl 196000 1
batches:1       timestamp:      dbcount:196000  DBFetch:java GetWOConfHold_Auto 196000 

timestamp :args[0] 19600 

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
        at GetWOConfHold_Auto.main(GetWOConfHold_Auto.java:18)
no of picking updates data : 0
No data.exiting

我尝试打印时间戳,但显示

timestamp :args[0] 19600  not the empty String

在Java中,它在主方法签名处停止

我想将空字符串作为命令行参数发送到Java文件。我检查时间戳记是否为空,然后从属性文件中选择值

1 个答案:

答案 0 :(得分:3)

system的字符串变体中,需要引用空字符串。 您是否尝试过options.data.labels.push('another color') 的列表版本?

system