我正在学习perl语言。我制作了一个简单的perl脚本(如下所示)。
#!/usr/bin/perl
use strict;
use warnings;
print "hi Lala\n";
我试图使用java语言在NetBean中运行这个脚本。我的代码如下:
public class javaProgram {
public static void main(String[] args) {
Process process;
try
{
String testFile = "perl
我试图从Java调用Perl脚本,但似乎无法做到这一点。
下面是我的Perl脚本,它创建了一个文件。这是一个简单的脚本。
use strict;
use warnings;
open(my $fh, '>', 'report.txt');
print $fh "My first report generated by perl\n";
close $fh;
print "done\n";
下面是我的Java代码,它正在调用上面的Perl脚本。
package perlfromjava;
import java.io.IOE
我正在尝试从Java程序中执行我的Perl脚本。我已经在我的计算机中安装了Perl。下面是我的示例Perl文件(test.pl)。
#!/usr/bin/perl -w
use 5.010;
use strict;
use warnings;
use Path::Tiny;
use autodie;
my $dir = path("E:/perl/scripts");
my $file = $dir->child("file.txt");
my $file_handle = $file->openw_utf8();
my @list=(
当我试图从我的主java应用程序运行perl脚本时:
try {
ProcessBuilder pb = new ProcessBuilder(path+"\\script.pl");
Process p = pb.start(); // Start the process.
p.waitFor(); // Wait for the process to finish.
System.out
我必须让这个命令从我的scala代码中运行
perl -ne '/pattern/ && print $1 and last' filename
我试过了
val re = """pattern"""
val file = "filename"
val v= (Process(Seq("""perl -ne '/"""+re+"""/ && print $1 and last' "
我在同时调用Parallel::ForkManager和Inline::Java时遇到问题。具体地说,如果我使用JNI => 1选项调用Inline::Java (我必须这样做),那么派生进程就不会返回到父进程。代码如下:
use Parallel::ForkManager;
##### Calling Inline::Java #####
use Inline Java => <<END, JNI => 1;
END
###### End of Inline::Java #####
my $pm = Parallel::ForkManager->ne
当我运行git签出--修补程序原产地/主file.java时,我看到:
Can't locate Git.pm in @INC (you may need to install the Git module)
(@INC contains:
/usr/share/perl/5.14.2
/usr/local/perl/lib/site_perl/5.20.0/x86_64-linux
/usr/local/perl/lib/site_perl/5.20.0
/usr/local/perl/lib/5.20.0/x86_64-linux /usr/local/perl/lib/
我正在尝试用下面的代码从java中执行一个perl脚本:
ProcessBuilder script =
new ProcessBuilder("/opt/alert-ssdb.pl");
Process tmp = script.start();
但是当我执行它时,它会返回
java.io.IOException: Cannot run program "/opt/alert-ssdb.pl": java.io.IOException: error=2, No such file or directory
at java.lang.
论坛上还有其他类似标题的帖子,但我想我的问题是不同的,因此我在这里发表这个调查。
我遇到的是同样的情况(和其他帖子一样),因为我“突然”收到了一条错误消息"perl is not recognized as an internal or external command, operable program or batch file“。
但区别是(至少我认为)-
(1)草莓Perl (64位)安装和运行得更早。
(2)在出现错误消息后,我在cmd下输入了cmd,显示草莓perl在路径中“静止”(假设我对cmd中的path的理解是正确的)。在最后看到完整的“路径”。
(3)当天早些时候,