2017-04-12 81 views
0

我们正在尝试启动WILDFLY服务器使用powershell脚本。下面是代码WILDFLY通过Powershell脚本启动服务器

cmd.exe /c $env:JBOSS_HOME\bin\standalone.bat 

write-host "Before Condition Check" 

if ($?) 
    { 
     write-host "WILDFLY Server STARTED....." 
    } 
    else 
    { 
     $JBossResult = "FAILED" 
     write-host "Error While Starting WILDFLY Server" 
    } 

服务器得到成功启动没有任何问题,但事情是,它是不出来的终端,因此是没有得到执行我的代码的一个部分。

反正有没有停止服务器出来的终端,所以我继续我的下一步。

回答

0

替换此:

cmd.exe /c $env:JBOSS_HOME\bin\standalone.bat 

与此:

start-process -filepath "$env:JBOSS_HOME\bin\standalone.bat" 

下水的cmd.exe直接导致了脚本等待它继续之前退出。

+0

它在本地工作,但是当从另一台机器使用invoke命令调用相同的脚本时,服务器无法启动。 Script Name:JBossStart.PS1 Invoke Command 'Invoke-Command -Session $ session -command“JBossStart.PS1”' 它正在成功调用脚本,但服务器未启动。任何想法如何解决它? –

+0

如果在远程会话中调用'$ env:JBOSS_HOME'确实可以工作,请尝试用硬编码路径替换它以测试它。你也可以用你的脚本包装起始脚本和终止脚本来写出日志文件发生的事情。 – CodedBeard

+0

FWIW WildFly 10.1.0.Final包含ps1脚本。如果你想看看,你可以在https://github.com/wildfly/wildfly-core/tree/2.2.1.Final/core-feature-pack/src/main/resources/content/bin看到它们。 –

相关问题