Mvaen 高级
1 导入其他工程 资源文件
先install到仓库里
然后根据组织名项目名版本号写在dependence里正常导入
<dependence> <groupId></groupId> <artifactId></artifactId> <version></version> </dependence>
2 聚合
拥有一个父模块,解决版本一起迭代更新的问题
新建一个Maven工程 , 只留下一个pom文件
在pom里添加
<packaging>pom</packaging> <!-- 管理的工程列表 --> <modules> <module>../ssm_pojo</module> <module>../ssm_dao</module> <module></module> <module></module> </modules>
代表着专门用于做项目管理
3 继承
由父工程做依赖 及其 版本控制
<!--声明此处进行依赖版本管理 --> <dependencyManagement> <dependencies> <dependence></dependence> <dependence></dependence> <dependence></dependence> </dependencies> </dependencyManagement>
在子工程里导入父工程
<parent> <groupId></groupId> <artifactId></artifactId> <version></version> <relativePath>../ssm/pom.xml</relativePath> </parent> <!-- 去掉groupId version --> <artifactId></artifactId>
然后在子工程的依赖中 , 引入依赖就不需要自己去指定版本了 , 可以直接用父工程的依赖版本
4 聚合与继承
5 属性
<properties> <spring.version>5.1.9.RELEASE</spring.version> </properties> <dependencies> <dependence> <groupId></groupId> <artifactId></artifactId> <version>${spring.version}</version> </dependence> </dependencies>
6 版本管理
6.1 工程版本
6.2 版本号约定
7 资源配置
在pom中的
在任意配置文件中加载pom文件中定义的属性
后面其实可以用nacos 配置中心来代替
<resources> <resource> <directory>${project.basedir}/ssm_dao/src/main/resources</directory> <filtering>true</filtering> </resource> </resources> <testResources> <testResource> <directory>${project.basedir}/ssm_dao/src/main/resources</directory> <filtering>true</filtering> </testRsource> </testResources>
8 环境配置 - 多环境
<profiles> <!-- 定义具体的环境:生产环境 --> <profile> <id>pro_env</id> <!-- 定义环境中专用的属性值 --> <properties> <jdbc.url>xxxx</jdbc.url> </properties> <!-- 设置默认启动 --> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <!-- 开发环境 --> <profile> <id>dev_env</id> <properties> <jdbc.url>aaaa</jdbc.url> </properties> </profile> </profiles>
然后需要在打包的时候指定环境名
新建一个maven指令
install -P dep_env
9 跳过测试
9.1 应用场景
9.2 跳过方法
-
idea中点击右边的maven组件,然后上面有个闪电的标志,点击,看到test的生命周期被中划线划掉,即可跳过
-
直接用命令行的方式来执行生命周期 -D skipTests
-
配置插件来跳过测试
<plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.1</version> <configuration> <skipTests>true</skipTests> </configuration> </plugin>
9.3 选定测试的内容
<plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.1</version> <configuration> <includes> <include> **/UserServiceTest.java </include> </includes> <excludes> </excludes> </configuration> </plugin>
10 私服
10.1 下载 与 启动
Nexus - maven私服产品
启动:
nexus /run nexus
访问地址: localhost:8081
./etc目录下的 nexus-default.properties文件可以修改对应的起点端口号
./bin/nexus.vmoptions可以修改最大内存, 日志等参数
10.2 私服资源获取
10.2.1 仓库分类
10.2.2 进行仓库分组
进入\sonatype-work\nexus3\admin.password
点击,里面存放了密码
用户名:admin
登录进去后可以设置新密码:123456
代理仓库
宿主仓库
仓库组:
创建一个宿主仓库
将新创建的tets-release仓库加到仓库组中
然后就可以在浏览的界面中上传文件了
10.3 本地仓库使用私服
上传地址:宿主地址
下载地址:组地址
进入maven本地配置中,配置访问私服
<server> <id>test-release</id> <username>admin</username> <password>123456</password> </server> <server> <id>test-snapshots</id> <username>admin</username> <password>123456</password> </server> <mirror> <id>nexus-test</id> <mirrorOf>*</mirrorOf> <name>私服仓库</name> <url>http://127.0.0.1:8081/repository/maven-public/</url> </mirror>
10.4 发布
添加maven的pom的配置
<distributionManagement> <repository> <id>test-release</id> <url>http://127.0.0.1:8081/repository/test-release/</url> </repository> <repository> <id>test-snapshots</id> <url>http://127.0.0.1:8081/repository/test-snapshots/</url> </repository> </distributionManagement>
然后生命周期reploy发布
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY