实现目标
通过Maven编译打包SpringBoot多模块应用程序,并将生成的各个模块的jar包上传至应用服务器。
实现环境
- Maven:编译服务器,环境为CentOS7+Maven。
- Application1:应用服务器,环境为CentOS7+JDK1.8。
- Application2:应用服务器,环境为CentOS7+JDK1.8。
- Application3:应用服务器,环境为CentOS7+JDK1.8。
- Application4:应用服务器,环境为CentOS7+JDK1.8。
实现步骤
应用程序简介
“新闻内容管理系统v2.0”是采用SpringBoot框架开发的多模块应用程序,包含以下五个子模块。

- news-web:新闻网站,供web终端用户通过浏览器浏览新闻资讯。
- news-admin:管理后台,供作者或编辑进行新闻创作、内容审核。
- news-service:数据服务,连接消息队列与数据库的中间应用,负责从消息队列提取数据,并将数据新增或更新至数据库与缓存。
- news-app:手机App的后端程序,为手机等移动设备App提供数据。
- news-common:公共依赖模块,此模块只为其它模块提供公共组件,不能独立运行。
应用程序的配置
1、修改新闻网站配置文件news-web/src/main/resources/application.yml。
1.1、监听端口配置。

- server.port:程序运行时监听的端口,默认为8080。
1.2、MySQL数据库配置。

- spring.datasourece.url:数据库IP、端口与名称,mysql数据库固定写法为:jdbc:mysql://IP地址:端口/数据库名。
- spring.datasourece.username:数据库登录名。
- spring.datasourece.password:数据库登录密码。
1.3、Redis缓存配置。

- redis.host:Redis服务器地址,默认为本机。
- redis.port:Redis服务器监听端口,默认为6379。
2、修改管理后台news-admin的配置文件news-admin/src/main/resources/application.yml。
2.1、监听端口配置。

2.2、MySQL数据库配置。

2.3、RabbitMQ消息队列配置。

- spring.rabbitmq.host:rabbitmq服务器IP地址。
- spring.rabbitmq.port:rabbitmq的读写端口,默认为5672。
- spring.rabbitmq.username:rabbitmq的登录用户,需要在rabbitmq服务器上创建。
- spring.rabbitmq.password:rabbitmq的登录密码,需要在rabbitmq服务器上创建。
- spring.rabbitmq.virtual-host:虚拟主机名称,需要在rabbitmq服务器上创建。
3、修改数据服务news-service的配置文件news-service/src/main/resources/application.yml。
3.1、监听端口配置。

3.2、MySQL数据库配置。

3.3、Redis缓存配置。

3.4、RabbitMQ消息队列配置。

- rabbitmq.listener.simple.acknowledge-mode:收到消息后的确认模式,manual为手动确认。
4、修改手机App后端程序配置文件news-app/src/main/resources/application.yml。
4.1、监听端口配置。

- server.port:程序运行时监听的端口,默认为8080。
4.2、MySQL数据库配置。

- spring.datasourece.url:数据库IP、端口与名称,mysql数据库固定写法为:jdbc:mysql://IP地址:端口/数据库名。
- spring.datasourece.username:数据库登录名。
- spring.datasourece.password:数据库登录密码。
4.3、Redis缓存配置。

- redis.host:Redis服务器地址,默认为本机。
- redis.port:Redis服务器监听端口,默认为6379。
应用程序的打包
1、查看编译服务器上是否已安装Maven。Maven的安装与配置请查看页面右侧“相关阅读”栏目中的文章。

2、在SpringBoot多模块应用程序的根目录下执行打包命令。

应用程序的部署
1、将编译完成的四个子模块中的jar包拷贝至应用服务器上。
