Linux下启动Jar包的几种常见方式

倾城之泪 2025-02-03T17:02:12+08:00
0 0 386

1. 使用java命令

在Linux下,使用java命令是最常见也是最简单的启动Jar包的方式。在终端中输入以下命令:

java -jar filename.jar

其中,filename.jar是你要启动的Jar包的文件名。确保你已经在终端中进入了Jar包所在的目录。

2. 创建启动脚本

如果你想将启动Jar包的命令封装到一个脚本中,以便在需要时方便调用,可以创建一个启动脚本。为了创建一个启动脚本,你需要执行以下步骤:

  1. 创建一个新的文本文件,文件扩展名可以为.sh
  2. 在文件的第一行添加以下代码来指定脚本的解释器:
#!/bin/bash
  1. 在文件的下一行添加启动Jar包的命令:
java -jar filename.jar
  1. 保存并关闭文件。
  2. 在终端中,进入该文件所在的目录,并为该文件赋予执行权限:
chmod +x scriptname.sh

其中,scriptname.sh是你创建的脚本文件名。 6. 现在你可以使用以下命令来执行该脚本:

./scriptname.sh

3. 使用系统服务

如果你希望将Jar包作为一个系统服务在后台运行,可以创建一个systemd的服务单元文件。下面是一个示例:

[Unit]
Description=My Java Application
After=network.target

[Service]
WorkingDirectory=/path/to/jar/file
ExecStart=/usr/bin/java -jar filename.jar
SuccessExitStatus=143
Restart=on-failure
User=yourusername

[Install]
WantedBy=multi-user.target

将上述内容保存为一个以.service为扩展名的文件,例如myjavaapp.service。然后,将文件复制到/etc/systemd/system/目录下。

接下来,使用以下命令使服务生效:

sudo systemctl daemon-reload
sudo systemctl enable myjavaapp
sudo systemctl start myjavaapp

这样,你的Jar包将会以系统服务的形式在后台运行。

4. 使用init.d脚本

如果你的Linux系统使用的是旧版本的init进程管理器,你可以创建一个启动脚本并将其放置在/etc/init.d/目录下。以下是一个示例:

#!/bin/bash
#
# My Java Application
#
# chkconfig: 345 99 01
# description: My Java Application
# processname: java

DAEMON_PATH="/path/to/jar/file"
APP_NAME="filename.jar"

PID_PATH_NAME="/var/run/filename.pid"

case "$1" in
start)
echo "Starting $APP_NAME..."
if [ ! -f $PID_PATH_NAME ]; then
nohup java -jar $DAEMON_PATH/$APP_NAME 2>/dev/null 1>/dev/null &
echo $! > $PID_PATH_NAME
echo "$APP_NAME started."
else
echo "$APP_NAME is already running."
fi
;;
stop)
if [ -f $PID_PATH_NAME ]; then
PID=$(cat $PID_PATH_NAME);
echo "Stopping $APP_NAME..."
kill $PID;
echo "$APP_NAME stopped."
rm $PID_PATH_NAME
else
echo "$APP_NAME is not running."
fi
;;
restart)
if [ -f $PID_PATH_NAME ]; then
PID=$(cat $PID_PATH_NAME);
echo "Stopping $PROCESS_NAME...";
kill $PID;
echo "$APP_NAME stopped.";
rm $PID_PATH_NAME
sleep 2
fi
echo "Starting $APP_NAME..."
nohup java -jar $DAEMON_PATH/$APP_NAME 2>/dev/null 1>/dev/null &
echo $! > $PID_PATH_NAME
echo "$APP_NAME started."
;;
esac
exit 0

将上述内容保存为一个以.sh为扩展名的文件,例如myapp.sh。然后,将文件复制到/etc/init.d/目录下。

接下来,执行以下命令将脚本添加到服务列表中:

sudo update-rc.d myapp.sh defaults

现在,你可以使用以下命令来控制该服务的启动、停止和重启:

sudo service myapp.sh start
sudo service myapp.sh stop
sudo service myapp.sh restart

结论

通过使用上述几种常见方式之一,你可以在Linux下轻松地启动Jar包。选择最适合你的需求的方式,并根据你的具体情况进行相应的配置。

希望这篇博客对你有所帮助!

相似文章

    评论 (0)