Gibt es eine Möglichkeit, Perl-Code auszuführen, ohne Runtime.getRuntime.exec ("...") zu verwenden; (parse in Java App)?Include Perl in Java
Antwort
fragen Ich habe mich in dieses kürzlich suchen. Die vielversprechendste Sache, die ich bis jetzt gefunden habe, ist das Inline::Java Modul auf CPAN. Es ermöglicht den Aufruf von Java aus Perl, aber auch (über einige enthaltene Java-Klassen) den Aufruf von Perl aus Java.
Nein, ich glaube nicht, dass das existiert. Während es mehrere Sprachen in die JVM portiert hat (JRuby, Jython etc.) ist Perl noch keiner von denen.
this sieht aus wie, was Sie für
Ich hätte schwören können, es war einfach wie Kuchen mit der Java Scripting API.
Aber es ist offenbar nicht auf der Liste der vorhandenen Implementierungen ...
Also, vielleicht hilft dies statt:
java and perl
edit: ich sagte "vielleicht"
Der JPL ist tot. Benutze es nicht. Inline :: Java ist der Weg zu gehen. – daotoad
Inline::Java eine embedded Perl interpreter bietet in einer Klasse. Sie können damit Perl-Code aus Ihrem Java-Code aufrufen.
Graciliano M. Passos' PLJava bietet auch einen eingebetteten Interpreter.
Verwenden Sie nicht JPL (Java Perl Lingo) - das Projekt ist tot und wurde von modernen Perls entfernt.
In Zukunft wird der Standard für die Verwendung einer Skriptsprache über den in JSR 223 eingeführten Java Scripting Support verwendet. Eine Liste der derzeit unterstützten Skriptsprachen finden Sie unter scripting project homepage. Leider ist Perl nicht dort noch :-(
Inline::Perl
ist die akzeptierte Art und Weise. Aber es gibt auch Jerl, die aus einer JAR ausgeführt werden können.
Hier an example ohne den VM-Wrapper zu verwenden (was nicht so ist . fun)
Hier einige Beispiele, die die jerlWrapper
-Klasse es einfacher, den Code zu machen:
import jerlWrapper.perlVM;
public final class HelloWorld {
/* keeping it simple */
private static String helloWorldPerl = "print 'Hello World '.$].\"\n\";";
public static void main(String[] args) {
perlVM helloJavaPerl = new perlVM(helloWorldPerl);
helloJavaPerl.run();
}
}
oder
import jerlWrapper.perlVM;
public final class TimeTest {
/* The (ugly) way to retrieve time within perl, with all the
* extra addition to make it worth reading afterwards.
*/
private static String testProggie = new String(
"my ($sec, $min, $hr, $day, $mon, $year) = localtime;"+
"printf(\"%02d/%02d/%04d %02d:%02d:%02d\n\", "+
" $mon, $day + 1, 1900 + $year, $hr, $min, $sec);"
);
public static void main(String[] args) {
perlVM helloJavaPerl = new perlVM(testProggie);
boolean isSuccessful = helloJavaPerl.run();
if (isSuccessful) {
System.out.print(helloJavaPerl.getOutput());
}
}
}
- 1. $ include # include äquivalent in Java?
- 2. Include in Android mit Java
- 3. Perl: Wie man Rubys "include/extend" -Mechanismus emuliert?
- 4. Perl Pack-Funktion entspricht in Java
- 5. Aufruf von Perl aus Java
- 6. Include Komponententests im selben Paket wie der Quellcode in Java
- 7. Der Unterschied zwischen cq include, sling include und jsp include
- 8. Include Aktion in AEM
- 9. Garbage Collection in Perl
- 10. Android Studio - Include ResourceBundles in Modul
- 11. Java Wrapper zu Perl/Python Code
- 12. Übergabe von Datenstrukturen von Java nach Perl
- 13. PHP include working, include header ist nicht
- 14. JAVA Perl - Port XOR Verschlüssler Klasse
- 15. Rufen Sie eine Java-Klasse von Perl
- 16. Hat Perl etwas wie Java/PHP Docs?
- 17. Ohne include #include <ctype.h>
- 18. include richtlinie
- 19. Java XML-Parsing - die Ausgabe von xi verschmelzenden: include
- 20. Ist die mehrfache Vererbung in Perl und Java gleich?
- 21. Wie soll ich ein Perl-Skript in Java aufrufen?
- 22. url mit Platz in GET-Parameter von Java Servlet Perl
- 23. Kann ich Java-ähnliche Schnittstellen in Perl erstellen?
- 24. Warum verhalten sich reguläre Ausdrücke in Java und Perl anders?
- 25. Eclipse Java; export jar, include referenzierte Bibliotheken, ohne fatjar
- 26. Include JavaScript-Datei in Teilansichten
- 27. abschaffen Include-Dateien in C++
- 28. Include Firebase Analytics in Bibliothek
- 29. Include-Übereinstimmungsindex in Regex-Ersetzungszeichenfolge
- 30. Wie funktioniert @include in Laravel?
bist du dir sicher: ** kannst du das Gegenteil tun: perl von Java ** anzurufen, ist es zuverlässig in mission critical stuff? – FutuToad