in reply to Invoke perl script from a Java program

Hi,

Check this example, to get an idea: http://javaevangelist.blogspot.com/2008/08/making-system-call-in-java.html

Regards,

fmerges at irc.freenode.net
  • Comment on Re: Invoke perl script from a Java program

Replies are listed 'Best First'.
Re^2: Invoke perl script from a Java program
by Anonymous Monk on Aug 11, 2009 at 15:05 UTC
    The clunky way I've used in the past was basically to call Runtime.exec(String[]) like this:
    String[] command = new String[]{"perl", scriptName, arg1}; try { Runtime r = Runtime.getRuntime(); Process p = r.exec(command); // Read the results InputStream in = p.getInputStream(); // ... in.close(); } catch(Exception e) { e.printStackTrace(); }

    The downside is that (at least on a Unix-like system) the Runtime#exec() call has to fork a copy of the Java VM, so you need plenty of RAM to get away with this.

    I've sure there must be some cleverer way using JNI, but I've never got my head around it.