SpringBoot项目打jar包并部署到服务器运行

一. 以maven多模块项目为例

1. "graduation-bbs-web"模块为项目启动类存储模块,打包时在pom.xml文件中把打包方式改为jar

2. 项目使用maven打包之后把jar包上传到服务器,使用以下命令运行jar包

# 配置好jdk的前提下直接运行(但是关闭xshell等窗口会停止运行)
java -jar ***.jar
# 后台运行指定jar包(默认将程序的所有日志打到jar包所在目录的nohup.out文件中)
nohup java -jar ***.jar --server.port=端口号 &

注:如果运行报***--1.0-SNAPSHOT.jar中没有主清单属性,解决方法是在项目启动类所在模块的pom文件中加上以下配置(这里加在了"graduation-bbs-web"模块的pom文件中),之后重新打包部署运行

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal><!--可以把依赖的包都打包到生成的Jar包中 -->
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

注:SpringBoot+Thyemleaf开发环境正常,打包jar发到服务器就报错Template might not exist or might not be accessible

<!--原因之一,可能是因为application.properties配置文件中thymeleaf默认配置templates后跟的有"/",所以代码return前不需要再加"/"-->
#thymeleaf
spring.thymeleaf.prefix=classpath:/templates/ (这里已经有 / 了,return 的路径不要 / 开头)

猜你喜欢

转载自blog.csdn.net/qq_40406380/article/details/120041081
今日推荐