2016-03-23 15 views
0

NDSM ve powershell kullanarak bir hizmet olarak bir Selenyum yüklemeye çalışıyorum. Ancak servis oluşturulurken doğru parametreler ayarlanmamış.NSSM ile hizmet yükleme powershell

CMD'de aynı komut çalıştırması başarıyla yürütülür ve hizmeti beklendiği gibi yükler.

Ayarları Powershell ile NSSM'ye nasıl geçirirsiniz? Ben kullanıyorum komut şöyledir:

nssm install SeleniumHub java -jar C:\bin\Selenium2\selenium-server-standalone-2.53.0.jar -role hub -hubConfig C:\bin\Selenium2\seleniumHubConfig.json 

NSSM powershell doğru NSSM çalıştırılabilir buluyor yani benim PATH üzerinde ama bir CMD

cevap

0

bunun ise aynı şekilde parametreleri işlemek için görünmüyor CMD eserler neden cmd komut olarak geçmez :)

cmd /c "nssm install SeleniumHub java -jar C:\bin\Selenium2\selenium-server-standalone-2.53.0.jar -role hub -hubConfig C:\bin\Selenium2\seleniumHubConfig.json" 
0

Haklısın - PowerShell aynı CMD gibiydi parametreleri işlemez. Buradaki problem, NSSM parametrelerinden bazılarının (-role ve -hub gibi) PowerShell parametreleri gibi görünmesidir, bu yüzden PowerShell bunları NSSM'ye aktarmak yerine yorumlamaya çalışır.

Bu parametrelerin tırnak içine alınması yardımcı olacaktır, ancak parametrelerle bir komutu çağırmanın en iyi yolunu bir dizi olarak gruplamak ve arama operatörü &'u kullanmaktır.

$params = @('install', 'SeleniumHub', 'java', '-jar', 
      'C:\bin\Selenium2\selenium-server-standalone-2.53.0.jar', 
      '-role', 'hub', '-hubConfig', 
      'C:\bin\Selenium2\seleniumHubConfig.json') 
& nssm $params