`

关于maven的一些知识整理

阅读更多
1、构件的路径

坐标是构件的逻辑表示方式,而物理表示方式则是文件。构件所在的文件路径,是由GAV决定的

比如log4j:log4j:1.2.15,所在的仓库路径是:

%repository_path%/log4j/log4j/1.2.15/log4j-1.2.15.jar

其中%repository_path%是跟仓库的实现有关,构件自身的命名规则是:

groupId/artifactId/version/artifactId-version.packaging

2、超级POM的位置

超级POM在这个路径:%M2_HOME%/lib/maven-model-builder-3.0.jar,解压之后的org/apache/maven/model/pom-4.0.0.xml

3、远程仓库的认证

如果远程仓库需要认证信息的话,是在settings.xml文件里配置的,而不是在maven项目的pom.xml里配置,这主要是出于安全性的考虑

4、跟仓库相关的几个POM配置

以下配置都是在pom.xml设置的

获取依赖的远程仓库:
<repositories>
    <repository>
        <id />
        <name />
        <url />
    </repository>
</repositories>

获取插件的远程仓库:
<pluginRepositories>
    <pluginRepository>
        <id />
        <name />
        <url />
    </pluginRepository>
</pluginRepositories>

可以看到,插件仓库和依赖仓库的配置是很像的,只是元素名有点不同

构件部署的远程仓库:
<distributionManagement>
    <repository>
        <id />
        <name />
        <url />
    </repository>
    <snapshotRepository>
        <id />
        <name />
        <url />
    </snapshotRepository>
</distributionManagement>

5、镜像仓库

镜像仓库是在settings.xml里配置的,常见的用法是跟私服结合起来。将一个私服的地址,配置为所有远程仓库的镜像

6、生命周期阶段,与插件目标的关系

是多对多的关系。另外插件目标,不一定要绑定到生命周期的某个阶段上才能执行,也是可以独立运行的,比如mvn dependence:tree

7、插件配置的方法

第一种方法,是在命令行用-D参数配置,这种方法仅对当次操作有效。比如maven-surefire-plugin插件的test目标提供了skip参数,对应的表达式是${maven.test.skip}

那么可以在命令行输入,mvn install -Dmaven.test.skip = true

要注意的是,并不是所有的插件目标参数都提供表达式的,对于这种没有提供表达式的参数,就只能在pom文件里配置了

第二种方法,是在pom文件中进行插件全局配置
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <skip>true</skip>
            </configuration>
        </plugin>   
    </plugins>
</build>

第三种方法,是在pom文件中针对特定的插件任务来配置
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <executions>
                <execution>
                    <id />
                    <phase />
                    <goals />
                    <configuration>
                        <skip>true</skip>
                    </configuration>
                </execution>
            </executions>
        </plugin>   
    </plugins>
</build>

这个方法与第二个方法的区别在于,第二种方法配置的参数是全局的,而第三种方法只是针对某个任务的

8、pom.xml和settings.xml的一些元素

pom.xml:
<project>
    <properties />
    <dependencies />
    <build />
    <repositories />
    <pluginRepositories />
    <distributionManagement />
</project>

settings.xml:
<settings>
    <localRepository />
    <servers />
    <mirrors />
    <proxies />
    <profiles />
    <activeProfiles />
</settings>
分享到:
评论

相关推荐

    maven常用知识整理

    以下是对"Maven常用知识整理"的详细阐述: 1. **项目依赖管理**:Maven通过pom.xml文件来管理项目的依赖关系,使得开发者可以声明项目需要的库,Maven会自动下载并管理这些库。依赖的版本冲突问题,Maven会按照一定...

    eclipse使用maven整理文档.rar_captured7ne_eclipse mavenhelper_maven

    【标题】"eclipse使用maven整理文档"涵盖了在Eclipse集成开发环境中使用Maven进行项目管理和文档生成的实践知识。Maven是一个强大的Java项目管理工具,它通过配置文件(pom.xml)来管理项目的构建、依赖关系和文档...

    超详细Maven快速入门到精通.txt打包整理.zip

    标题"超详细Maven快速入门到精通.txt打包整理.zip"表明这是一个关于Maven的全面教程,涵盖了从基础到高级的各个方面,旨在帮助用户快速掌握Maven的使用。Maven是一个Java项目管理和综合工具,由Apache软件基金会开发...

    自己整理的maven

    ### Maven核心知识点详解 #### 一、Maven配置与运行 **Maven配置**: - **MAVEN_OPTS环境变量**:此变量包含了用于启动运行Maven的Java虚拟机(JVM)的参数。开发者可以通过设置`MAVEN_OPTS`来优化Maven的性能。...

    maven基础入门教程

    ### Maven基础入门教程知识点整理 #### Maven概述 1. **Maven定义与历史** Maven是一个开源项目管理工具,由Apache软件基金会管理。它用纯Java编写,旨在简化Java项目的构建过程以及管理项目生命周期。Maven通过...

    MAVEN基础篇-资料整理

    ### MAVEN基础篇-资料整理 #### 第一章 Maven 简介 ##### 1.1 软件开发中的阶段 在软件开发过程中,一个典型的项目生命周期包括多个阶段:初始化、配置管理、源代码管理、编译、测试、打包、验证、部署等。每个...

    maven详解.emmx

    将maven知识整理为详细的思维导图,均为学习过程中的知识整理,方便记忆和复习,内容非常详尽,建议收藏,也可以根据该导图学习maven相关知识

    maven教程整理

    ### Maven教程整理 #### Maven简介 Maven是一个广泛使用的Java项目构建工具,它不仅能够进行构建,还能有效地管理项目的依赖关系、文档以及整个构建过程。与Ant等其他构建工具相比,Maven的一大特色在于它引入了...

    Apache Maven 培训文档.doc

    Maven入门教程整理,用来介绍Maven的一些基础知识和使用方法。

    maven学习笔记1

    本笔记主要涵盖了Maven的基础知识,包括资料收集、安装指南,特别是针对Linux环境下的Ubuntu系统,以及Maven的一些核心概念和操作。 **一、Maven介绍** Maven通过使用一个标准的目录结构和一个XML文件(pom.xml)来...

    华为认证HCIP鲲鹏知识点整理

    ### 华为认证HCIP鲲鹏知识点整理 #### 一、应用执行过程 在华为HCIP鲲鹏认证考试中,考生需要了解应用是如何被构建、打包以及最终在系统上执行的过程。这部分知识点主要通过选择题或者连线题的形式来考察。 **...

    IntelliJ Idea下Maven插件使用技巧.pdf

    IntelliJ Idea下Maven插件使用技巧 标签:Idea Maven IntelliJ Idea下Maven插件使用技巧,对于开发人员快速上手,并可能有效提高开发效率,特将此整理分享给大家。

    自己整理的SSM+maven环境整合

    SSM框架整合是Java开发中常见的一种技术组合,主要包括Spring...以上就是SSM+maven环境整合的基本流程和关键知识点。实际开发中,还需要考虑日志管理、异常处理、安全性配置、性能优化等方面,使得项目更加健壮和高效。

    Docker+Jenkins+GitLab+Maven+SpringBoot&SpringCloud实现自动化构建镜像与部署详解

    初衷想法:在学习过程中遇到比较有趣的问题、然而花了点心血和时间去整理,然而进行梳理出来一份文章比较完整有知识体系的DevOps自动化构建与部署工程文章,技术知识内容比较多,而且文章内容较长,然而分了几个章程...

    JavaWEB基础知识整理.rar_Java WEB 开发基础知识整理

    这份"JavaWEB基础知识整理.rar"压缩包提供了一份详细的Java Web开发基础教程,适合初学者和有一定经验的开发者进行复习和巩固。以下是对其中核心知识点的详细解读: 1. **Java Web概述** - Java Web开发主要涉及...

    maven快速入门

    结合慕客网上视频的学习对maven知识点进行整理汇总。感觉很有用分享给大家

    jfinal3.2+maven+idea

    下面我们将深入探讨JFinal、Maven以及IntelliJ IDEA在开发过程中的作用和相关知识点。 **JFinal** 是一个基于Java的高效MVC框架,设计目标是简化开发,提高开发效率。JFinal的特点包括: 1. **轻量级**:JFinal...

Global site tag (gtag.js) - Google Analytics