Quantcast
Viewing latest article 4
Browse Latest Browse All 110

Answer by Eugene for Jboss 7.1.1 start/stop script

1) First you need to have JBoss downloaded. (I assume you already have valid Java version installed).

2) Once it is downloaded, unzip the folder:

 cd /Users/eugene/Downloads mkdir JBOSS-7 cp /Users/eugene/Downloads/jboss-as-7.1.1.Final.zip /Users/eugene/Downloads/JBOSS-7 cd /Users/eugene/Downloads/JBOSS-7 unzip /Users/eugene/Downloads/jboss-as-7.1.1.Final.zip 

3)

 cd Users/eugene/Downloads/JBOSS-7/jboss-as-7.1.1.Final/bin ./standalone.sh

If you want to stop it:

 ctrl + c

of course your path may be different. If you want to run it in background, then just do:

 ./standalone.sh &

Stopping it :

 ps -ef | grep jboss

You will get an output close to this one:

 eugene@eugenes-MacBook-Pro ~/D/J/j/bin> ps -ef | grep jboss 501  1471  1446   0  1:32AM ttys000    0:03.31 /usr/....

And then issue:

 kill -9 1471

Finally with JBoss CLI you can execute:

 ./jboss-cli.sh --connect ":shutdown"

EDIT

The Script seems to do it's job, all you have to do is edit it a bit:

 #!/bin/sh echo "********* Stopping JBoss Server by killing the process **********"; ps -e | grep jboss | grep -v grep | awk '{print $1}' | xargs kill echo "********* Stopped JBoss Server by killing the process **********";

Notice that I removed a few lines and changed java with jboss

Put this in a file called stopJboss.sh

Then :

 sudo chmod +x stopJBoss.sh

Then invoke it when needed:

 ./stopJBoss.sh

This will work only if you have a single instance of JBoss running, for more you will need a different script.

P.S. I am not a guru in scripting but here is what this line does:

 ps -e | grep jboss | grep -v grep | awk '{print $1}' | xargs kill

It is going to look for every process that contains the jboss keyword. But it also going to output the grep command itself, thus you will get an output of two commands, but you need only the first one.

You could run ps -e | grep jboss and see that the output contains two lines and not one.

That is why you invoke grep -v grep - which means : in those two lines found grep for "grep" but invert the result, in this way you omit the second unneeded result.

Then awk '{print $1}' splits the string into tokens and takes the first one, which is the PID that you need and then you pass this PID to the kill command using the xargs command.


Viewing latest article 4
Browse Latest Browse All 110

Trending Articles