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中的添加变量 , 同样可以在properties文件中用${}引用,然后需要在pom中配置resources

在任意配置文件中加载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下载地址

启动:

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发布

Maven-高级的更多相关文章

  1. maven 高级玩法

    maven 高级玩法 标签(空格分隔): maven 实用技巧 Maven 提速 多线程 # 用 4 个线程构建,以及根据 CPU 核数每个核分配 1 个线程进行构建 $ mvn -T 4 clean ...

  2. Maven高级:01.maven分模块构建&&02.私服的应用

    IntelliJ IDEA 2018.3.6 x64 07 Maven高级:01.maven分模块构建(上) 07 Maven高级:01.maven分模块构建(中) 07 Maven高级:01.mav ...

  3. 【Maven】Maven 高级应用

    Maven 高级应用 Maven 基础 Maven 是一个项目管理工具,它有如下好处: 节省磁盘空间 可以一键构建 可以跨平台使用 依赖传递和管理,提高开发效率 一键构建:Maven 自身集成了 To ...

  4. maven高级笔记

    Maven高级 1.maven基础知识回顾 1.1 maven介绍 maven 是一个项目管理工具,主要作用是在项目开发阶段对Java项目进行依赖管理和项目构建. 依赖管理:就是对jar包的管理.通过 ...

  5. Maven 高级应用

    Maven 的高级应用主要体现在 ==依赖==,==聚合==,==继承== * 依赖 就是在当前项目的pom.xml 总引入依赖的坐标 最最经常用到的 <dependencies> < ...

  6. maven高级学习

    上一篇<maven是什么>介绍了最初级的maven学习,今天就趁着周末的大好时光一起学习下maven的高级知识吧. 1.maven工程要导入jar包的坐标,就必须要考虑解决jar冲突 1) ...

  7. Maven高级应用--编译全模块包-dist包

    1. 在需要生成dist包的模块级别,新建文件夹xxx-xxxx-dist 2. 进入目录,新建pom.xml,建议copy 3. dependencies节点,把要编译成全局包的应用引入进来 < ...

  8. 22 Maven高级应用

    1.Maven基础知识回顾 maven是一个项目管理工具.依赖管理:maven对项目中的jar包的管理过程.传统的工程我们直接将jar包放置到项目中. maven工程真正的jar包放置在仓库中,项目中 ...

  9. Maven高级

    第一章 Maven解决冲突的方式 1.1 第一声明者优先原则 那个jar包的坐标在pom.xml文件上属于靠上的位置,这个jar包就是先声明的.先声明的jar包坐标下的依赖包,可以优先进入项目中. 示 ...

  10. Java框架--SSM&Oracle&Maven高级

    〇.内容介绍 一.MyBatis01:框架概述.环境搭建及入门案例.自定义框架 1.介绍 框架:封装细节,是开发中的解决方案 三层架构与SSM的关系 表示层web:SpringMVC框架 业务层ser ...

随机推荐

  1. 斐波那契数python实现迭代循环两种方法

    #递归方法 def fibona(n): if n == 0: return 0 elif n==1: return 1 else: return fibona(n - 1) + fibona(n - ...

  2. Python发送飞书消息

    #!/usr/bin/python3.8 # -*- coding:UTF-8 -*- import os, sys sys.path.append(os.path.dirname(os.path.a ...

  3. 论文笔记:Access Path Selection In A Relational Database Management System

    论文笔记:Access Path Selection In A Relation Database Management System 这篇文章是 1979 年由 IBM 发表的.主要介绍了 Syst ...

  4. select multiple 浏览器兼容

    select multiple 时一般是设置 height <select multiple="multiple" style="height:87px;" ...

  5. pytorch 独热编码报错的解决办法:one_hot is only applicable to index tensor

    首先,报错原因,我认为是数据类型错误, 在文档中表示,第一个tensor参数的数据类型为LongTensor,也就是torch.int64类型的,如果你有报这个错:"one_hot is o ...

  6. oceanbase 社区版安装

    # 一.环境准备|节点类别|主机名|IP||-|-|-||OBSERVER|observer1|192.168.3.41||OBSERVER|observer2|192.168.3.42||OBSER ...

  7. mfcc vs fbank

    There is some debate in the community regarding the use of the DCT, instead of directly using the lo ...

  8. SSM项目

    1.环境搭建 1.1 结构目录 1.2 配置逆向工程 1.2.1 pom.xml <?xml version="1.0" encoding="UTF-8" ...

  9. 学生网络创业交流会-2021年office

    1.课程的讲解之前,先来对题目进行分析,首先需要在考生文件夹下,将Wrod素材.docx文件另存为Word.docx,后续操作均基于此文件,否则不得分. 2.这一步非常的简单,打开下载素材文件,在[文 ...

  10. mysql8.0修改密码

    把密码设置为空:UPDATE mysql.user SET authentication_string='' WHERE user='root' and host='localhost'; 查看USE ...