打包SpringBoot 项目
需要将 SpringBoot 项目进行打包。可以使用 Maven 的快捷工具,或者在项目的 pom.xml 文件所在目录执行以下命令:
mvn clean package
部署注意
Windows系统下,按照以下方式在cmd窗口以管理员身份允许使用命令启动springboot项目打包之后的jar包即可(开放对应端口访问权限);Linux系统下,需要关闭防火墙,允许项目对应端口的访问权限;在部署的时候,所处服务器要有对应的开发环境版本(如jdk、mysql、redis等等)。
启动 jar 包
在生成 jar 包的目录下执行以下命令来启动 SpringBoot 应用:
java -jar SpringBootDemo1-0.0.1-SNAPSHOT.jar
注意:执行 jar 包时,必须确保项目中包含 Spring Boot 特有的插件。一般情况下,该插件会自带在 Spring Boot 工程中。
在 pom.xml 文件中,确保包含以下插件配置:
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins>
</build>
在 Spring Boot 项目中,spring-boot-maven-plugin 插件是 Maven 构建工具中一个重要的插件。首先,spring-boot-maven-plugin 插件的一个关键功能是创建可执行的 JAR 或 WAR 文件。使用这个插件,可以将 Spring Boot 应用打包成一个包含所有必要依赖项、类文件和资源文件的可执行 JAR 文件。这样,部署和运行应用程序变得非常简单,只需执行一个命令即可启动应用。其次,这个插件能够自动管理依赖项。它可以解析并打包项目所需的所有依赖项,自动处理依赖项之间的冲突和版本问题。这意味着开发者不需要手动管理每一个依赖项,减少了出错的可能性,提高了开发效率。
指定环境启动
如果需要指定特定环境来启动应用,可以使用以下命令:
java -jar SpringBootDemo.jar --spring.profiles.active=pro
其中pro
是配置文件中定义的环境名
修改启动端口
在启动 jar 包时,可以通过命令行参数修改应用的启动端口:
java -jar SpringBootDemo.jar --server.port=80
解决 Windows 端口被占用问题
在 Windows 系统中,如果遇到端口被占用的问题,可以按照以下步骤进行操作:
# 查询端口
netstat -ano
# 查询指定端口
netstat -ano|findstr "端口号"
# 根据进程PID查询进程名称
tasklist | findstr "进程PID号"
# 根据PID杀死任务
taskkill /F /PID "进程PID号"
# 根据进程名称杀死任务
taskkill -f -t -im "进程名称"
解决 Linux 端口被占用问题
# 查询指定端口(以8080为例)的占用情况
netstat -tuln | grep :8080
# 根据端口号查询占用该端口的进程
lsof -i :8080
# 根据进程PID查询进程名称(假设PID为12345)
ps -p 12345 -o comm=
# 杀死进程(假设PID为12345)
kill 12345
# 如果进程没有被终止,使用-9强制终止
kill -9 12345
# 或者根据进程名称杀死进程(假设进程名称为java)
pkill java