024-Spring Boot 应用的打包和部署

一、概述

springboot:spring-boot-maven-plugin

通过:parent引用

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.8</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

增加plugin

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

打包后jar 直接可用

二、手工打包【不推荐】

打包命令:maven clean package

打包并导出依赖:maven clean package dependency:copy-dependencies

  1》然后在target目录下会有dependency文件夹

  2》在target文件夹下建立product文件/lib文件夹

  3》将target/denpendency下文件全部拷贝至target/product/lib下

  4》并且将生产的mall-product-1.0.0.jar同时拷贝至target/product/lib下

接下来运行即可,进入到target/product目录下

  java -Djava.ext.dirs=lib com.lhx.mall.product.App

此时网站启动成功,访问即可。。

  编写启动脚本

  将:java -Djava.ext.dirs=lib com.lhx.mall.product.App 写入 start.cmd文件即可。

三、maven打包插件【推荐】

  http://www.mojohaus.org/appassembler/appassembler-maven-plugin/

在pom上增加如下配置

    <build>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>appassembler-maven-plugin</artifactId>
                <version>1.10</version>
                <configuration>
                    <!-- 生成window Linux 两种平台的执行脚本 -->
                    <platforms>
                        <platform>windows</platform>
                        <platform>unix</platform>
                    </platforms>
                    <!-- 根目录 -->
                    <assembleDirectory>${project.build.directory}/product</assembleDirectory>
                    <!-- 打包jar,以及maven依赖的jar放到这个目录中 -->
                    <repositoryName>lib</repositoryName>
                    <!-- 可执行脚本目录 -->
                    <binFolder>bin</binFolder>
                    <!-- 配置文件目录 -->
                    <configurationDirectory>conf</configurationDirectory>
                    <!-- 拷贝配置文件到上面的目录中 -->
                    <copyConfigurationDirectory>true</copyConfigurationDirectory>
                    <!-- 从哪里拷贝配置文件到上面的目录中(默认src/main/resources) -->
                    <configurationSourceDirectory>src/main/resources</configurationSourceDirectory>
                    <!-- lib目录中jar的存放规则,默认是${groupid}/${artifactid}的目录格式,flat表示直接把jar放到lib目录 -->
                    <repositoryLayout>flat</repositoryLayout>
                    <encoding>UTF-8</encoding>
                    <logsDirectory>logs</logsDirectory>
                    <tempDirectory>tmp</tempDirectory>
                    <programs>
                        <program>
                            <id>product</id>
                            <!-- 启动类 -->
                            <mainClass>com.lhx.mall.product.App</mainClass>
                            <jvmSettings>
                                <extraArguments>
                                    <extraArgument>-server</extraArgument>
                                    <extraArgument>-Xmx1G</extraArgument>
                                    <extraArgument>-Xms1g</extraArgument>
                                </extraArguments>
                            </jvmSettings>
                        </program>
                    </programs>
                </configuration>
            </plugin>
        </plugins>
    </build>

接下来执行打包命令:maven clean package appassembler:assemble

windows下调试运行bin下命令即可

四、其他

4.1、增加日志配置

4.2、增加监控配置

五、Linux部署

5.1、打成zip包

5.2、上传至Linux,配置数据库等,日志输出目录等

5.3、对bin下增加权限,进入bin下:chmod +x *

5.4、运行命令

  ./product

 

posted @ 2018-04-09 00:11  bjlhx15  阅读(335)  评论(0编辑  收藏  举报
Copyright ©2011~2020 JD-李宏旭