mit exec Java ausführen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
antwort
anwenden
befehl
code
datei
ergebnis
externen server
folgende umgebung
freuen
konsole
machen
nachlesen
not
output
paar
parameter
string
test
url
zeile
-
Heyho
Ich habe ein Problem:
Ich möchte mit exec eine Jar Datei ausführen (natürlich auf einem externen Server, nicht hier), und probiere nun mit exec rum. Mit exec('ls') kann ich den ls befehl ausführen, kein Thema, aber ich möchte jetzt eine eigene Jar ausführen. Dafür geh ich wie folgt vor:
exec('java -jar "/var/www/meinordner/test.jar");
Mit ein paar parametern. Es funktioniert natürlich nicht... Nun will ich rausfinden warum, und teste es mit einfachem:
exec('java -version');
Aber das gibt einfach keine rückgabe. Getestet damit:
<?php echo exec('java -version'); ?>
Den parameter von exec verändere ich immer logischerweise.
So, aber sobald ich etwas von java will, geht es nicht. Alle anderen befehle wie "ps" oder "ls" geben, wenn auch eingeschränkt, Ergebnisse. Aber java -version ergibt nichts.
Gibt es also Dinge, die ich beachten muss, um mit exec java ausführen kann? Folgende Umgebung
- Ubuntu 10.04
- sun java6_26
- apache2 aktuell
Per konsole geht alles, es muss aber per PHP Script gehen :-S
Würd mich über Antwort freuen.
Liebe Grüße -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
<?php exec('java -version', $output); print_r($output); ?>
-
ggamee schrieb:
probiere mal so:
exec('java -jar "/var/www/meinordner/test.jar");
Aber das gibt einfach keine rückgabe. Getestet damit:exec('java -version');
<?php echo exec('java -version'); ?>
echo `java -jar '/var/www/meinordner/test.jar' 2>&1`;
(was 2>&1 macht, muss man doch nicht erklären!?).<?php // error_reporting(E_ALL | E_STRICT); // zur not eventuell diese zeile noch anwenden echo '<pre>' . `java -version 2>&1`;
Beitrag zuletzt geändert: 10.10.2011 4:46:05 von hemiolos -
fabo schrieb:
<?php exec('java -version', $output); print_r($output); ?>
nur ausgegeben:
Array()
hemiolos schrieb:
ggamee schrieb:
probiere mal so:
exec('java -jar "/var/www/meinordner/test.jar");
Aber das gibt einfach keine rückgabe. Getestet damit:exec('java -version');
<?php echo exec('java -version'); ?>
echo `java -jar '/var/www/meinordner/test.jar' 2>&1`;
(was 2>&1 macht, muss man doch nicht erklären!?).<?php // error_reporting(E_ALL | E_STRICT); // zur not eventuell diese zeile noch anwenden echo '<pre>' . `java -version 2>&1`;
Gibt das gewünschte ergebnis =) Gibt es eine möglichkeit, den String mit Variablen zu spicken? Sodass ich ein $jarPath zb reinbauen kann? ` kann man meines wissens nicht mit einem . unterbrechen :-S
Liebe Grüße -
ggamee schrieb:
ja:
... Gibt es eine möglichkeit, den String mit Variablen zu spicken? Sodass ich ein $jarPath zb reinbauen kann?
so einfach.<?php <echo/oder sonstwas> `... $var ...`;
==== edit ====
was du zwischen den backsticks (` `) hast ist bash code. also dort nachlesen!
Beitrag zuletzt geändert: 12.10.2011 0:16:57 von hemiolos -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage