准备工作
- 一个可以访问的服务器,已安装宝塔面板。
- Java开发环境(JDK)已安装在服务器上。
- Maven或Gradle等构建工具,用于打包 Spring Boot 项目,我这里用的是 Maven
- 集成开发环境,我这里使用的是IntelliJ IDEA。
项目打包
- 配置 pom.xml(针对 Maven):
因为我这边是通过阿里云云原生应用脚手架生成的 Spring Boot 项目,所以在 pom.xml
文件中包含了 Spring Boot 插件,示例如下:
xml
<project>
<!-- 其他配置信息 -->
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<configuration>
<mainClass>com.pennon.javaservice.JavaServiceApplication</mainClass>
<skip>false</skip>
</configuration>
<executions>
<execution>
<id>repackage</id>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
要注意的是,spring-boot-maven-plugin
插件配置中的 skip
属性要设置为 false
。 默认被设置为 true
,这会导致 Spring Boot
在打包时跳过构建可执行 JAR
文件的操作,在生成的 JAR
文件中缺少必要的主清单属性,从而会导致 "no main manifest attribute" 的错误。
- 打包项目:
我这里直接通过 IntelliJ IDEA 右边栏的 Maven 插件,先执行 clean
命令,然后选择 package
命令,然后等待打包完成。
在 target
目录下,就会生成一个 jar
文件,这个文件就是我们最终要部署的 Spring Boot 项目。
部署到宝塔面板
- 上传构建产物
使用FTP客户端或宝塔面板的文件管理功能,将构建好的JAR文件上传到服务器的指定目录(比如/www/wwwroot/your_project
目录下)。
- 新建Java项目
在"网站"管理中的"Java项目"Tab页下,点击"添加Java项目",填写项目信息:
- 项目类型:选择 SpringBoot
- 项目jar路径:选择刚刚上传的JAR文件
- 项目名称:自定义填写
- 项目端口:默认8080即可,并选中"放行端口"选项
- 项目JDK:选择已安装的JDK版本
- 项目执行命令:默认即可,无需修改
- 其他参数:默认即可,无需修改
然后点击"确定"按钮,等待项目创建完成,一般创建成功后,项目就启动了。
如果项目状态未显示"运行中",请点击"设置"按钮,检查项目日志,查看是否有错误信息。
- 访问项目
在浏览器中输入服务器的IP地址和项目端口号,即可访问到Spring Boot项目。