2012-07-26 13 views
7

Windows'ta node.js ile bir otomatik web uygulaması oluşturma işlemi oluşturuyorum. Kodumuzu Google kapatma java programı üzerinden çalıştırmaya çalışıyorum. Düğüm belgelerinde child_process ile ilgili belgeleri okudum. Daha önce pencerelerde çalışmadığından bahsediyor. Bunun için bir paket var mı yoksa etrafta mı çalışıyorsunuz?Windows'ta node.js'de harici bir programı nasıl çalıştırıyorsunuz?

Kod çalışmayı denedim.

var _exec = require('child_process').exec; 
_exec('java ' + '-jar '+ COMPILER_JAR +' --js '+ srcPath +' --js_output_file '+ distPath, 
    function(e){ 
     echo("google closure done...."); 
     echo(e); 
    }); 
+1

. Düğüm genel olarak harika çalışıyor, bu jar dosyası adımı genel sürecin küçük bir kısmı ve takımın çoğu OSx/Linux üzerindedir. – Joel

cevap

13

ben windows XP üzerine inşa bir kuyruk kontrol etmek için bir web sunucusu uygulaması var ve herhangi bir ek paketler olmadan toplu dosyaları veya yürütülebilir için kullandı.

Geri çağırma ve stderr'deki hata parametresini kontrol etmeliyim, çünkü bu işlemin nedeninin bulunmadığını bulmanıza yardımcı olabilir. Umarım benim sunucusundan çıkış

Benim örnek çözümü yardımcı olur: Ben farkında değilim etrafında bir düğüm paket ya da başka bir çalışma olup olmadığını merak ediyorum

var theJobType = 'FOO'; 
var exec = require('child_process').exec; 
var child = exec('Test.exe ' + theJobType, function(error, stdout, stderr) 
    { 
     if (error != null) { 
      console.log(stderr); 
      // error handling & exit 
     } 

     // normal 

    }); 
+0

teşekkürler. Aldığım hata: 'java' dahili veya harici bir komut olarak, çalıştırılabilir program veya toplu iş dosyası olarak tanınmadı. Sistem düğümü kullanımda değil mi? – Joel

+1

Sadece test ettim, exe'imi yoldaki bir klasöre koydum ve bulundu. Ama varolan bir exe adı koyduğumda tam hatasını aldım. Yani onun java.exe – miltonb

+0

yol/konumu çözme bir sorun gibi görünüyor, sorun buydu. Java.exe'nin tam yolunu ve şimdi çalışmasını ekledim. Teşekkürler. Şimdi diğer makine konfigürasyonlarında çalışmam gerekiyor. java.exe OSX veya Linux üzerinde çalışmayacak. – Joel

İlgili konular