"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment exécuter les applications Java en tant que services sur Linux?

Comment exécuter les applications Java en tant que services sur Linux?

Publié le 2025-03-23
Parcourir:143

How do I run Java applications as services on Linux?

exécutant des applications java en tant que services sur Linux

pour assurer un fonctionnement continu et une gestion facile des applications de serveur Java sur Linux, il est souvent désirable de les exécuter en tant que services. Ce guide explore une solution qui répond à ces exigences.

La nécessité de services

dans un environnement linux hébergé virtuel, les applications Java peuvent être démarrées manuellement ou via des scripts comme rc.local , mais cette approche manque de flexibilité et de contrôle requise pour le maintien sous pour le maintien sous. Pour gérer les applications indépendantes des redémarrages du serveur, envisagez de les exécuter comme des services.

Création d'un script de service

Pour créer un script de service, suivez ces étapes:

#!/bin/sh
SERVICE_NAME=your_service_name
PATH_TO_JAR=full_path_to_jar_file
PID_PATH_NAME=/tmp/your_service_name-pid
case $1 in
    start)
        echo "Starting $SERVICE_NAME ..."

        # Check if service is already running
        if [ ! -f $PID_PATH_NAME ]; then

            # Execute Java command in the background (daemonize)
            nohup java -jar $PATH_TO_JAR > /tmp/service_name.log 2>&1 &

            # Store PID to track process
            echo $! > $PID_PATH_NAME
            echo "$SERVICE_NAME started ..."
        else
            echo "$SERVICE_NAME is already running ..."
        fi
    ;;
    stop)
        # Check if PID file exists to ensure service is running
        if [ -f $PID_PATH_NAME ]; then
            PID=$(cat $PID_PATH_NAME)
            echo "$SERVICE_NAME stopping ..."

            # Kill process
            kill $PID
            echo "$SERVICE_NAME stopped ..."

            # Remove PID file
            rm $PID_PATH_NAME
        else
            echo "$SERVICE_NAME is not running ..."
        fi
    ;;
    restart)
        # Stop service
        if [ -f $PID_PATH_NAME ]; then
            PID=$(cat $PID_PATH_NAME)
            echo "$SERVICE_NAME stopping ..."
            kill $PID
            echo "$SERVICE_NAME stopped ..."
            rm $PID_PATH_NAME
        else
            echo "$SERVICE_NAME is not running ..."
        fi

        # Start service
        echo "$SERVICE_NAME starting ..."
        nohup java -jar $PATH_TO_JAR > /tmp/service_name.log 2>&1 &
        echo $! > $PID_PATH_NAME
        echo "$SERVICE_NAME started ..."
    ;;
esac 

installation

  1. Enregistrez le script ci-dessus en tant que fichier avec une extension ".sh" (par exemple, "MyService.sh").
  2. Faire le script exécutable: chod x mysvice.sh. /etc/init.d ou /lib/systemd/system)._&&&HOGNE MyService
  3. stop: /etc/init.d/myservice stop ou systemctl stop myservice
restart: /etc/init.d/myservice redémarrer ou systemctl redémarrer MyService

Solution complète pour exécuter des applications Java en tant que services sur Linux, offrant le contrôle et la flexibilité requis pour une gestion et une maintenance efficaces.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3