2017-03-14 1 views
0

je le code PHP suivant:php exec ne peut pas trouver dll Java JVM bien chemin est correct

$compileCSS = "C:\ApacheFlexSDK\bin\mxmlc.exe 
C:\inetpub\utils\css\\". $_POST['cssFileName'] . ".css" . " 2>&1"; 
exec ($compileCSS, $output); 
// uncomment to see the response to command 
print_r($output); 

Il exécute une commande telle que:

C:\ApacheFlexSDK\bin\mxmlc.exe 
    C:\inetpub\utils\css\sample.css 2>&1 

Quand je cours ceci, j'obtiens l'erreur suivante:

Array ([0] => Error loading: C:\Program Files (x86)\Java\jre1.8.0_121\bin\client\jvm.dll) 

C:\Program Files (x86)\Java\jre1.8.0_121\bin\client\jvm.dll est correct et il y a un jvm.dll ici.

Lorsque j'exécute la commande directement à partir de la ligne de commande, cela fonctionne correctement, c'est-à-dire que je génère un fichier SWF (mxmlc est le compilateur Apache Flex).

Vous ne trouvez pas comment résoudre cela, s'il vous plaît, aidez-nous.

Répondre

0

Vous devez envelopper soit l'application avec le chemin ou les params à l'application des guillemets doubles, si elles ont des espaces:

$cmd = 'targetapp.exe "C:\my other path with spaces\targetfile.xxx"'; 
exec($cmd); 


$cmd = '"C:\my path with spaces\targetapp.exe" C:\mypathnospaces\targetfile.xxx'; 
exec($cmd);