You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将SpringBoot程序设为本地后台服务随PC开机自动启动?

本地部署SpringBoot应用并设置开机自启(无窗口后台运行)

针对无法使用Docker且需要本地后台开机自启的场景,分Windows、Linux/macOS两种系统给出具体方案:

Windows系统方案

方法1:VBS脚本+开机启动文件夹(快速实现)

  1. 打包Jar包:用Maven或Gradle将SpringBoot项目打包为可执行Jar,比如your-app.jar:
    • Maven:mvn clean package
    • Gradle:gradle build
  2. 创建隐藏窗口启动脚本:新建start-app.vbs文件,内容如下(替换Jar的实际路径):
    Set WshShell = CreateObject("WScript.Shell")
    WshShell.Run "java -jar D:\projects\your-app.jar", 0
    Set WshShell = Nothing
    
    其中0参数表示完全隐藏CMD窗口。
  3. 设置开机自启:按下Win + R输入shell:startup,打开开机启动文件夹,将start-app.vbs复制到该文件夹即可。

方法2:注册为Windows服务(稳定可靠,推荐)

使用WinSW工具(无需Hyper-V,轻量级服务包装器):

  1. 下载WinSW的对应版本exe(如WinSW-x64.exe),重命名为your-app-service.exe,和Jar包放在同一目录。
  2. 创建配置文件your-app-service.xml,内容如下(替换Jar路径):
    <service>
      <id>YourSpringBootApp</id>
      <name>你的SpringBoot应用服务</name>
      <description>后台运行的SpringBoot应用服务</description>
      <executable>java</executable>
      <arguments>-jar D:\projects\your-app.jar</arguments>
      <logmode>rotate</logmode> <!-- 日志自动轮转 -->
    </service>
    
  3. 安装并启动服务:以管理员身份打开CMD,进入Jar所在目录,执行:
    • 安装服务:your-app-service.exe install
    • 启动服务:your-app-service.exe start
      之后可在Windows「服务」面板中管理该应用的启停、开机自启状态。

Linux/macOS系统方案

Linux:systemd服务管理

  1. 打包并授权Jar包:打包得到your-app.jar后,赋予执行权限:chmod +x your-app.jar
  2. 创建systemd服务文件:新建/etc/systemd/system/your-app.service,内容如下(替换用户名和Jar路径):
    [Unit]
    Description=SpringBoot应用服务
    After=network.target
    
    [Service]
    User=your-username
    ExecStart=/usr/bin/java -jar /home/your-username/projects/your-app.jar
    Restart=always  # 异常退出自动重启
    RestartSec=5
    StandardOutput=journal+console
    StandardError=journal+console
    
    [Install]
    WantedBy=multi-user.target
    
  3. 配置开机自启:
    • 刷新systemd配置:sudo systemctl daemon-reload
    • 设置开机自启:sudo systemctl enable your-app.service
    • 启动服务:sudo systemctl start your-app.service

macOS:LaunchAgent实现开机自启

  1. 打包Jar包:同样得到可执行Jar包。
  2. 创建LaunchAgent配置文件:新建~/Library/LaunchAgents/com.your.app.plist,内容如下(替换Jar路径):
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>Label</key>
        <string>com.your.app</string>
        <key>ProgramArguments</key>
        <array>
            <string>/usr/bin/java</string>
            <string>-jar</string>
            <string>/Users/your-username/projects/your-app.jar</string>
        </array>
        <key>RunAtLoad</key>
        <true/> <!-- 开机时加载 -->
        <key>KeepAlive</key>
        <true/> <!-- 异常退出自动重启 -->
        <key>StandardErrorPath</key>
        <string>/var/log/your-app-error.log</string>
        <key>StandardOutPath</key>
        <string>/var/log/your-app.log</string>
    </dict>
    </plist>
    
  3. 加载并启动服务:
    • 加载配置:launchctl load ~/Library/LaunchAgents/com.your.app.plist
    • 启动服务:launchctl start com.your.app
      开机后应用会自动后台运行,如需卸载执行:launchctl unload ~/Library/LaunchAgents/com.your.app.plist

内容的提问来源于stack exchange,提问作者James

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 21:10:30