2020了,新项目应该大多都采用前后端完全分离了,前后端采用ajax进行交互,不再像以前一样了,但从中引发出另一个问题,那就是系统集成打包部署又显得很麻烦,不再像之前一样简单的运行一个命令,多了繁琐的操作。下面由我介绍一下frontend-maven-plugin和maven-resources-plugin这两个插件配合的使用方案
前置条件
项目结构
├── dava-admin
│ ├── web
│ │ ├─── src
│ │ │ ├─── main
│ │ │ │ ├─── java
│ │ │ │ ├─── resources
│ │ │ │ │ ├─── view //此目录是我们的目标路径(实际项目中,看你们个人喜好)
│ │ │ │ │ ├─── 其他文件(夹)
│ │ │ └─── test
│ │ ├─── 其他文件(夹)
│ │ └─── pom.xml
│ ├── view
│ │ ├─── dist //前端打包后的输出文件(实际项目中,看你们个人喜好)
│ │ ├─── node_modules
│ │ ├─── public
│ │ ├─── src
│ │ ├─── package.json
│ │ ├─── 其他文件(夹)
│ │ └─── pom.xml
│ └─── pom.xml
其他环境
配置
dava-admin下的pom.xml
4.0.0
xyz.dava
dava-admin
1.0-SNAPSHOT
view
web
pom
view 下的pom.xml
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
dava-admin
xyz.dava
1.0-SNAPSHOT
4.0.0
view
1.6
com.github.eirslett
frontend-maven-plugin
${frontend-maven-plugin.version}
install node and yarn
install-node-and-yarn
generate-resources
v12.16.2
v1.22.4
yarn install
yarn
yarn build
yarn
build
web 下的pom.xml
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
dava-admin
xyz.dava
1.0-SNAPSHOT
web
0.0.1-SNAPSHOT
war
web
ims平台后台管理系统
1.8
dava-admin
maven-resources-plugin
copy Vue.js frontend content
generate-resources
copy-resources
src/main/resources/view
true
${project.parent.basedir}/view/dist
**
打包
经过简单的设置然后在dava-admin目录下执行mvn package吧