Я так устал смотреть, как люди оскорбляют nohup
. Вот как работают real подпрограммы демонизации:
- Создание дочернего процесса.
- Запустить демон как дочерний элемент этого дочернего процесса.
- Выход из первого процесса.
Простой способ эмулировать это с помощью sh
заключается в следующем.
sh -c "mvn jetty:run &"
Наблюдайте ...
scott@optimusprime:~/code/leapfrog/lasso> sh -c "mvn jetty:run &"
scott@optimusprime:~/code/leapfrog/lasso> ps aux | grep jetty:run
scott 26165 45.5 5.8 813556 235764 pts/9 Sl 15:23 0:06 /usr/lib/jvm/java-6-sun//bin/java -Xmx512M -classpath /home/scott/opt/apache-maven-2.2.1//boot/classworlds-1.1.jar -Dclassworlds.conf=/home/scott/opt/apache-maven-2.2.1//bin/m2.conf -Dmaven.home=/home/scott/opt/apache-maven-2.2.1/ org.codehaus.classworlds.Launcher "jetty:run"
scott@optimusprime:~/code/leapfrog/lasso> exit
Если я проверяю свой список процессов с отдельного терминала или позже, программа все еще работает.
Однако я должен спросить, почему вместо того, чтобы просто установить свое веб-приложение на локальный сервер приложений и запустить его? Надеюсь, вы не управляете своими реальными средами с помощью Apache Maven.