从0到1搭建java后端开发脚手架
1。什么是脚手架
脚手架是一个基础设施工具,用于快速生成项目的框架代码和文件结构。它是一个标准的开发工具,允许开发人员在项目的早期阶段快速构建具有基本功能和结构的系统。
2.脚手架的重要性
在主流的微服务架构体系中,很多公司都会将原有的单体架构或者重度微服务进行拆分。这时候按模块划分(产品、订单、用户、库存、折扣、搜索、管理后台……)和领域驱动设计(保险、理赔、支付、保单管理)就会需要很多微服务项目。如果一项一项地创建微服务,真的是在做重复性工作,既容易出错,又无用处,而且浪费精力和物力。这时基础的持久层、日志、异常处理、权限控制等在项目创建时就一起创建了,这样不仅减少了重新创建或者部分复制带来的风险,而且效率也很高。 ?项目如:SpringBoot项目引入了MyBatis-Plus、Redis、Logback、Hutool、Swagger-UI等。或者将公司架构沉淀为基础项目的模板。
springboot模板工程:
3.2 创建脚手架
3.2.1 使用idea打开工程模板
使用IDEA打开基础工程,查看maven配置路径。构建过程中,保证maven路径始终一致。我的maven路径如下。
D:/Program Files/apache-maven-3.2.5
D:\Program Files\apache-maven-3.2.5\conf\settings.xml
D:\Program Files\apache-maven-3.2.5\repository
然后运行项目,确保基本项目正常。
3.2.2 注意版本号
然后注意pom.xml文件中的gvn项目。这是项目的版本号,也和下面创建的模板的版本号有关。
org.springframework.boot.demo
spring‐boot‐stage‐demo
0.0.1‐SNAPSHOT
3.2.3 搭建脚手架
方法一:打开Terminal命令行窗口。通常指的是这个项目目录。如果没有,cd到该项目并输入:
mvn archetype:create-from -project #生成archetype。
从现有项目中执行方法2:在当前项目所在的文件夹中执行
例如:项目路径为 D:\spring-staggingcmd 并执行
d:
cd D:\spring-stagging
mvn archetype:create-from-project
完成项目后执行。创建完成,生成如下结构
注意:如果这里创建的话,结构如下图
解决方案 1、设置如图所示的artifactId与模块前缀一致
移动到新建目录的目标目录下,打开gitbash,执行以下操作
删除相关idea文件
rm -rf .idea
find . -name " .iml" -type f -print -exec rm -rf {} ;
删除不必要的代码示例。 -name "xxxMain" -type f -print -exec rm -rf {} ;
示例:将脚手架放在目录 D:\spring-stagging-archetype 中,该目录主要存放 src 和 pom 文件。可以
3.2.4 发布脚手架
使用idea打开并管理maven
创建项目时,还必须保证maven一致,否则找不到合适的脚手架pom部署到artifactId仓库
否则创建时: Could not find artifact org.springframework.boot.demo:spring-boot-stage-demo-archetype:pom:0.0.1-SNAPSHOT
xxx-central
libs-releases-local
http://artifactory.66.com/libs-releases-local
xxx-snapshots
libs-snapshot-local
http://artifactory.66.com/libs-snapshots-local
以后创建项目时使用pom中的Gav 脚手架gav
org.springframework.boot.demo
spring-boot-stage-demo-archetype
0.0.1-SNAPSHOT
maven-archetype
将脚手架项目上传到git代码仓库并保存方便以后的更新和下雨
4。使用脚手架创建新项目
4.1 脚手架gav配置
4.2 待创建的目标项目gav内容
4.3 Maven配置
4.4 根据新建项目
5.参考文档
https://maven.apache.org/archetype/maven-archetype-plugin/
作者:京东健康马仁喜
来源:京东云开发者社区❀
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。