Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

jar部署

打包方式

将所有的资源打成一个jar包

pom.xml


<resources>
    <resource>
        <directory>src/main/webapp</directory>
        <!--打包排除文件夹配置-->
        <excludes>
            <!-- 打包生产并手动将static、html、upload、template复制到生产 -->
            <exclude>static/</exclude>
            <exclude>html/</exclude>
            <exclude>upload/</exclude>
            <exclude>template/</exclude>
            <!-- 如果生产需要实时修改WEB-INF/下的页面可,启用这行并手动将项目中的WEB-INF目录复制到运行环境 -->
            <!-- <exclude>WEB-INF/</exclude>-->
        </excludes>
    </resource>
    <resource>
        <directory>src/main/resources</directory>
    </resource>
    <resource>
        <directory>src/main/java</directory>
        <excludes>
            <exclude>**/*.java</exclude>
        </excludes>
    </resource>
</resources>

mvn clean package

Tip

根据pom.xml文件中的resource节点中的提示,可以灵活控制需要打包的文件夹目录。

多模块打包

  1. 在ms-mcms 模块 pom.xml 文件中排除静态资源(参考上述配置),推荐排除WEB-INF,方便生产需要实时修改WEB-INF/下的页面
  2. 在ms-parent 模块 package 打包
  3. 部署时只需要ms-mcms 模块的jar包
  4. 其他参考下方的目录结构创建文件

目录结构

只需要在ms-mcms模块操作,完成下面目录结构后,

在当前文件夹进入cmd执行命令

java -jar ms-mcms.jar

config:配置文件,会优先使用config文件夹下的配置(需手动创建,手动复制src/main/resources/*下的配置文件)

WEB-INF:ftl视图文件

template:(必须)模版目录,需要复制一份

upload:(必须)上传的文件夹

html:静态化自动生成的目录(自动生成)

static:静态资源文件

ms-mcms.jar:主程序

*.sh:linux启动、停止脚本(手动复制bin下脚本,docker不需要此脚本)

*.bat:window启动、停止脚本(手动复制bin下脚本,docker不需要此脚本))

Tip

推荐docker容器部署,方便维护。docker部署也可以参考此目录机构方式,方便灵活更新系统文件,启动脚本参考 开源中国