springboot jar包 一键部署,开机自动启动

文件放置情况:

文件放置情况:

下载链接:

https://download.youkuaiyun.com/download/qq_21246715/13133608

jdk1.8.0_144:jdk文件夹

demo.jar:springboot打包的jar

vis-start.exe:winsw文件

vis-start.xml:winsw配置

vis-start-install.cmd:将jar添加服务,并启动

vis-start-uninstall.cmd: 将服务停止,并删除服务

打不开安装这个.exe:winsw需要依赖.net4,如电脑没安装.net,请先安装改程序

 

Vis-start.xml配置

<configuration>

  <!-- 系统服务ID,不能与其他系统服务名称重复-->

  <id>vis-springBootJar</id>

  <!-- 系统服务显示名称 -->

  <name>vis-springBootJar</name>

  <!-- 服务描述 -->

  <description>springBootJar Service</description>

  <!-- java路径 -->

  <executable>%BASE%/jdk1.8.0_144/bin/java.exe</executable>  

  <!-- 命令参数,分行可以用多行'argument'标记 -->

  <arguments>-jar %BASE%\demo.jar</arguments>

  <!-- 日志 -->

  <logpath>%BASE%\logs</logpath>

</configuration>

执行命令:

启动服务双击:vis-start-install.cmd

编辑vis-start-install.cmd

%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
vis-start.exe install
vis-start.exe start

检测:

 

 

停服务请使用:vis-start-uninstall.cmd

编辑vis-start-uninstall.cmd

%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
vis-start.exe stop
vis-start.exe uninstall

<think>好的,我需要帮助用户在Windows上部署Spring Boot应用程序。首先,我得回忆一下Spring Boot部署的基本步骤,然后考虑Windows环境的特定要求。 用户可能已经开发好了应用,现在需要部署到生产环境。常见的部署方式有将Spring Boot打成可执行的JAR文件,或者作为WAR文件部署到Tomcat等Servlet容器。不过,根据Spring Boot的推荐,使用内嵌服务器的JAR文件更简便。 首先,用户需要确认他们的项目已经正确配置了Maven或Gradle插件,以便生成可执行的JAR。比如在Maven中,spring-boot-maven-plugin负责打,这个插件会在MANIFEST.MF中添加Main-Class等信息。引用中提到的build-info生成可能和版本管理有关,但部署的话可能暂时不需要关注这个。 接下来,生成可执行JAR的步骤应该是运行mvn clean package,这会在target目录下生成JAR文件。用户需要检查是否生成了正确的文件,并且能够通过java -jar命令运行。这时候可能会有依赖问题或者端口冲突,比如默认的8080端口被占用,需要在application.properties中配置server.port。 然后,用户可能希望在Windows上作为服务运行,这样应用可以在后台启动,并且随系统重启。这时候可以考虑使用winsw或者其他服务封装工具。例如,将JAR文件配置为Windows服务,这样管理起来更方便。需要写一个XML配置文件,指定ID、名称、可执行路径等,然后安装服务。 另外,用户可能需要配置日志文件的位置,确保应用在运行时能够记录日志,便于排查问题。在application.properties中设置logging.file.path或者logging.file.name可以指定日志路径。 还有,部署时可能需要考虑环境相关的配置,比如生产环境的数据库连接信息。Spring Boot支持多环境配置,通过application-prod.yml和激活prod profile来实现。用户需要确保在启动时指定正确的profile,比如--spring.profiles.active=prod。 安全性也是需要考虑的,比如使用HTTPS,或者配置防火墙规则允许外部访问应用的端口。如果应用需要访问其他服务,比如数据库,需要确保网络连接正常,权限正确。 还有,用户可能希望自动部署流程,比如通过脚本一键部署,或者结合CI/CD工具。例如,使用GitHub Actions或者Jenkins来自动构建和部署到Windows服务器。引用中的Jib插件可能更多用于容器化部署,但用户的问题是关于Windows的,可能需要直接部署JAR文件。 最后,监控和管理部署后的应用也很重要。引用提到的Spring Boot Admin可以帮助监控应用的健康状态、日志等。用户需要在服务端配置Spring Boot Admin Server,并在客户端应用中添加相关依赖,注册到Admin Server,这样可以在UI界面上查看应用的状态。 可能的问题点:用户可能不熟悉如何将JAR作为服务运行,或者遇到环境变量配置的问题。需要详细说明使用winsw的步骤,或者推荐其他工具如NSSM。另外,权限问题可能导致服务安装失败,需要以管理员身份运行命令。 总结步骤:打JAR,测试运行,配置为服务,设置环境配置,处理网络和安全性,配置监控。需要逐步指导用户完成这些步骤,并给出常见问题的解决方法。</think>在Windows上部署Spring Boot应用程序可通过以下步骤实现,确保应用稳定运行并支持后台服务管理: --- ### **1. 打Spring Boot应用** 首先需将项目打为可执行JAR文件(推荐)或WAR文件。 - **使用Maven打**:在项目根目录执行命令: ```bash mvn clean package ``` 生成的JAR文件位于`target`目录,名称格式为`<项目名>-<版本>.jar`。 - **验证JAR文件**:通过命令行运行: ```bash java -jar target/your-application.jar ``` --- ### **2. 配置生产环境参数** 在`application.properties`或`application-prod.yml`中设置环境相关参数,例如: ```properties server.port=8081 # 修改端口 spring.profiles.active=prod # 激活生产环境配置 logging.file.path=C:\\spring-app\\logs # 指定日志目录 ``` --- ### **3. 将应用注册为Windows服务** 为实现在后台运行及开机自启,需将JAR封装为Windows服务。 **推荐工具**: - **WinSW**(Windows Service Wrapper)[^3] **步骤**: 1. 下载WinSW的.NET 4.0版本([GitHub Release](https://github.com/winsw/winsw/releases)) 2. 将`winsw.exe`重命名为`springboot-app.exe`,并创建同名的XML配置文件`springboot-app.xml`: ```xml <service> <id>SpringBootApp</id> <name>Spring Boot Application</name> <description>Spring Boot服务示例</description> <executable>java</executable> <arguments>-jar "C:\path\to\your-application.jar"</arguments> <log mode="roll"></log> </service> ``` 3. 以管理员身份运行命令安装服务: ```bash springboot-app.exe install ``` 4. 启动服务: ```bash sc start SpringBootApp ``` --- ### **4. 配置防火墙规则** 允许外部访问应用端口(如8081): ```bash netsh advfirewall firewall add rule name="Spring Boot App Port" dir=in action=allow protocol=TCP localport=8081 ``` --- ### **5. 监控与管理** 集成**Spring Boot Admin**实现应用监控[^2]: 1. 在服务端项目中添加依赖: ```xml <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-server</artifactId> </dependency> ``` 2. 在客户端应用中添加: ```xml <dependency> <groupId>de.codecentric</groupId> <artifactId>spring-boot-admin-starter-client</artifactId> </dependency> ``` 3. 配置客户端连接Admin Server: ```properties spring.boot.admin.client.url=http://admin-server:8080 ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值