Java 通过Ant任务停止JBOSS

Java 通过Ant任务停止JBOSS,java,ant,jboss,Java,Ant,Jboss,我正在尝试这些目标。它们都抛出异常,如下所示。 你知道怎么了吗 <target name="serverOFF2"> <sequential> <java dir="${JBOSS_HOME}/server/default/conf" classname="org.jboss.Shutdown" fork="false"> <arg line="localhost 8080"/> <classpath> <pathelement

我正在尝试这些目标。它们都抛出异常,如下所示。 你知道怎么了吗

<target name="serverOFF2">
<sequential>
<java dir="${JBOSS_HOME}/server/default/conf" classname="org.jboss.Shutdown" fork="false">
<arg line="localhost 8080"/>
<classpath>
<pathelement path="${JBOSS_HOME}/bin/shutdown.jar"/>
</classpath>
</java>
</sequential>
</target>

<target name="serverOFF3">
<exec executable="${JBOSS_HOME}/bin/shutdown.bat" spawn="false">
<arg line="-S" />
</exec>
</target>

<target name="serverOFF4">
<exec dir="${JBOSS_HOME}/bin" executable="cmd.exe"
os="Windows 2000,Windows XP">
<arg line="/c shutdown.bat -S"/>
<env key="NOPAUSE" value="true"/>
</exec>
</target>
蚂蚁目标:

<target name="serverOFF2">
<sequential>
<java dir="${JBOSS_HOME}/server/default/conf" classname="org.jboss.Shutdown" fork="false">
<arg line="localhost 8080"/>
<classpath>
<pathelement path="${JBOSS_HOME}/bin/shutdown.jar"/>
</classpath>
</java>
</sequential>
</target>

<target name="serverOFF3">
<exec executable="${JBOSS_HOME}/bin/shutdown.bat" spawn="false">
<arg line="-S" />
</exec>
</target>

<target name="serverOFF4">
<exec dir="${JBOSS_HOME}/bin" executable="cmd.exe"
os="Windows 2000,Windows XP">
<arg line="/c shutdown.bat -S"/>
<env key="NOPAUSE" value="true"/>
</exec>
</target>
例外情况:
javax.naming.CommunicationException[根异常为java.rmi.ConnectException:拒绝连接主机:PC45577

是否使用启动批处理文件中的JBoss.bind.address=0.0.0.0启动JBoss服务器?如果不是,则服务器将仅在本地侦听,无法访问

<target name="serverOFF2">
<sequential>
<java dir="${JBOSS_HOME}/server/default/conf" classname="org.jboss.Shutdown" fork="false">
<arg line="localhost 8080"/>
<classpath>
<pathelement path="${JBOSS_HOME}/bin/shutdown.jar"/>
</classpath>
</java>
</sequential>
</target>

<target name="serverOFF3">
<exec executable="${JBOSS_HOME}/bin/shutdown.bat" spawn="false">
<arg line="-S" />
</exec>
</target>

<target name="serverOFF4">
<exec dir="${JBOSS_HOME}/bin" executable="cmd.exe"
os="Windows 2000,Windows XP">
<arg line="/c shutdown.bat -S"/>
<env key="NOPAUSE" value="true"/>
</exec>
</target>
因此,您可以通过执行以下操作来启动服务器:

<target name="serverOFF2">
<sequential>
<java dir="${JBOSS_HOME}/server/default/conf" classname="org.jboss.Shutdown" fork="false">
<arg line="localhost 8080"/>
<classpath>
<pathelement path="${JBOSS_HOME}/bin/shutdown.jar"/>
</classpath>
</java>
</sequential>
</target>

<target name="serverOFF3">
<exec executable="${JBOSS_HOME}/bin/shutdown.bat" spawn="false">
<arg line="-S" />
</exec>
</target>

<target name="serverOFF4">
<exec dir="${JBOSS_HOME}/bin" executable="cmd.exe"
os="Windows 2000,Windows XP">
<arg line="/c shutdown.bat -S"/>
<env key="NOPAUSE" value="true"/>
</exec>
</target>
run.bat -b192.168.3.100 -Djboss.bind.address=0.0.0.0
编辑:来自我稍后的评论

<target name="serverOFF2">
<sequential>
<java dir="${JBOSS_HOME}/server/default/conf" classname="org.jboss.Shutdown" fork="false">
<arg line="localhost 8080"/>
<classpath>
<pathelement path="${JBOSS_HOME}/bin/shutdown.jar"/>
</classpath>
</java>
</sequential>
</target>

<target name="serverOFF3">
<exec executable="${JBOSS_HOME}/bin/shutdown.bat" spawn="false">
<arg line="-S" />
</exec>
</target>

<target name="serverOFF4">
<exec dir="${JBOSS_HOME}/bin" executable="cmd.exe"
os="Windows 2000,Windows XP">
<arg line="/c shutdown.bat -S"/>
<env key="NOPAUSE" value="true"/>
</exec>
</target>
还要检查防火墙是否未阻止JNDI端口TCP 1099。请尝试使用telnet或netcat连接到该端口:

<target name="serverOFF2">
<sequential>
<java dir="${JBOSS_HOME}/server/default/conf" classname="org.jboss.Shutdown" fork="false">
<arg line="localhost 8080"/>
<classpath>
<pathelement path="${JBOSS_HOME}/bin/shutdown.jar"/>
</classpath>
</java>
</sequential>
</target>

<target name="serverOFF3">
<exec executable="${JBOSS_HOME}/bin/shutdown.bat" spawn="false">
<arg line="-S" />
</exec>
</target>

<target name="serverOFF4">
<exec dir="${JBOSS_HOME}/bin" executable="cmd.exe"
os="Windows 2000,Windows XP">
<arg line="/c shutdown.bat -S"/>
<env key="NOPAUSE" value="true"/>
</exec>
</target>
telnet 192.168.3.100 1099
nc -vv 192.168.3.100 1099

是的,我是。而且JBOSS安装在我运行ant任务的同一台电脑上。当您这样指定RMI服务器IP时会怎么样:-Djava.RMI.server.hostname=192.168.3.100Hmm,您是否将JNDI端口从默认的1099更改了?如果没有,您可以通过尝试使用telnet localhost 1099连接到它吗?我想您已经关闭或是合作了配置防火墙以允许访问这些端口?是的,这就是问题所在。防火墙正在阻止端口1099。感谢帮助。