Как отключить JBoss Wildfly, когда я не могу получить доступ к инструменту CLI?

Я использую Wildfly 10.0.0.CR2 с Java 8. У меня есть Wildfly прослушивание http-соединений на порту 8080 и в прошлом использовали эту команду для выключения сервера ...

./jboss-cli.sh --connect command=:shutdown

однако иногда я не могу получить доступ к этому инструменту, даже если сервер все еще работает. Обратите внимание на взаимодействие ниже на моем Mac ...

Daves-MacBook-Pro-2:bin davea$ ./jboss-cli.sh --connect command=:shutdown
Failed to connect to the controller: The controller is not available at localhost:9990: java.net.ConnectException: WFLYPRT0023: Could not connect to http-remoting://localhost:9990. The connection timed out: WFLYPRT0023: Could not connect to http-remoting://localhost:9990. The connection timed out
Daves-MacBook-Pro-2:bin davea$ telnet localhost 8080
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

мой вопрос в том, что такое надежный способ выключения сервера JBoss? Примечание. Я бы предпочел метод, который не полагается на инструмент CLI.

2 ответов


Я подозреваю, что иногда он не может подключиться, потому что я вижу в telnet, что localhost сначала разрешает ipv6. вы пробовали:

./bin/jboss-cli.sh --connect controller=127.0.0.1:9990 command=:shutdown

Короче, вы всегда можете просто убить PID:

pgrep -d" " -f "wildfly" | xargs kill;

остановить Wildfly:

$ ./jboss-cli.sh --connect command=:shutdown