Maven2-坐标
什么是Maven坐标?
在生活中,每个城市,地点,都有自己独一无二的坐标,这样快递小哥才能将快递送到我们手上。
类似于现实生活,Maven的世界也有很多城市,那就是数量巨大的构件,也就是我们平时用的jar,war等文件。如果这些构件没有具体的省份,门牌号,那就只能挨家挨户的搜查了,于是Maven定义这样一组规则。世界上任何一个构件都可以使用Maven坐标唯一标识,Maven坐标元素包括:groupId,artifactID,version,packaging,classifier,当我们提供了这些信息后,Maven就会从中亚仓库中寻找相应的构建供我们使用。
我们开发自己的项目时,也要为其定义适当的坐标,以便其他Maven项目引用该项目生成的构建。
坐标元素详解
groupId
当前Maven项目隶属的实际项目,比如groupId为 org.sonatype.nexus,那么org.sonatype就表示一个组织,nexus表示这个组织下的实际项目
artifactId
该元素定义了实际项目中的一个maven项目,推荐做法将使用的实际项目名称作为artifactId的前缀,因为在默认情况下,Maven生成的构件,会以artifactId作为开头,这样可以方便需找实际构件。
version
该元素定义了Maven当前所处的版本
packaging(可选)
该元素定义了Maven项目打包的方式,打包方式会影响到构建的生命周期,默认为jar
classifier
该元素定义了构建输出的一些附属构件,与主构件对应,不能直接定义项目的classifier,因为附属构建不是项目直接生成的,而是由附加的插件帮助生成的。
比如,如果主构件为nexus-indexer-2.0.0.jar,那么可能会通过插件生成如nexus-indexer-2.0.0-javadoc.jar,nexus-indexer-2.0.0-sources.jar等,其中包含了java文档和源代码,这个时候javadoc和sources就是两个附属构建的classifier,这样附属构建也有了自己唯一的坐标。
坐标代码实例
现有一份pom.xml文档部分内容,我们可以看一下文档是如何利用Maven坐标的
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.xikunqu.account</groupId>
<artifactId>account-email</artifactId>
<name>Account Email</name>
<version>1.0.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>2.5.6</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
- 可以看到pom.xml文档中定义了该项目的groupId,artifactId,name和version,当构建后,就会生成该项目的jar包,此时,如其他项目要使用此项目,就可以通过坐标找到此jar包。
- 还可以看到文档中还利用坐标声明了依赖和插件。
Maven2-坐标的更多相关文章
- Drools 规则引擎应用
规则引擎-drools 1 .场景 1.1需求 商城系统消费赠送积分 100元以下, 不加分 100元-500元 加100分 500元-1000元 加500分 1000元 以上 加1000分 .... ...
- Drools 规则引擎应用 看这一篇就够了
1 .场景 1.1需求 商城系统消费赠送积分 100元以下, 不加分 100元-500元 加100分 500元-1000元 加500分 1000元 以上 加1000分 ...... 1.2传统做法 1 ...
- C#基础教程/适合初学者
C#基础教程 第一章 C#语言基础 本章介绍C#语言的基础知识,希望具有C语言的读者能够基本掌握C#语言,并以此为基础,能够进一步学习用C#语言编写window应用程序和Web应用程序.当 ...
- (九)Maven坐标详解
Maven的一个核心的作用就是管理项目的依赖,引入我们所需的各种jar包等.为了能自动化的解析任何一个Java构件,Maven必须将这些Jar包或者其他资源进行唯一标识,这是管理项目的依赖的基础,也就 ...
- maven实战(02)_坐标详解
(一) 何为mave坐标 maven的世界中拥有数量非常巨大的构件,也就是平时用的一些jar,war等文件. maven定义了这样一组规则: 世界上任何一个构件都可以使用Maven坐标唯一标志,ma ...
- 4.Maven概念模型,maven的生命周期,Maven坐标,依赖管理(依赖范围,依赖声明),仓库管理,私服概念
1 maven概念模型 2 maven的生命周期,项目构建过程 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdG90b3R1enVvcXVhbg== ...
- 3.Maven坐标和依赖
1.1 何为Maven坐标 正如之前所说的,Maven的一大功能就是管理项目依赖.为了能自动化地解析任何一个Java构件,Maven就必须将它们唯一标识,这就依赖管理的底层基础——坐标. 1.2 坐标 ...
- [Maven实战](7)坐标
1. 简单介绍 maven的世界中拥有数量很巨大的构件,也就是平时用的一些jar,war等文件. 在maven为这些构件引入坐标概念之前,我们无法使用不论什么一种方式来唯一标识全部这些构件. 因此,当 ...
- Maven(三)在Eclipse中使用Maven与Maven坐标
这一篇讲解一下在eclipse中使用maven,在一些高版本的eclipse中是自带maven插件的.所以这里就不在讲解怎么安装插件了. 接下来我们创建一个MavenFirst项目 一.在Eclips ...
- 03 Maven 坐标与依赖
Maven 坐标与依赖 Maven 的一大功能是管理项目依赖.为了能自动化地解析任何一个 Java 构件, Maven 就必须将它们唯一标识,这就依赖管理的底层基础 一一 坐标.本章将详细分析 Mav ...
随机推荐
- python_Tkinter
Tkinter相关 python支持多种图形界面的第三方库,包括:TKwxWidgetsQTGTK等等但是python自带的库是支持TK的TKinter,使用使用Tkinter,无需安装任何包,就可以 ...
- 2018-2019-2 《网络对抗技术》Exp0 Kali安装
2018-2019-2 <网络对抗技术>Exp0 Kali安装 ---20165110 一.实验要求 1.下载 2.安装Kali 3.连接网络 4.共享文件 5.更新软件源 二.实验步骤 ...
- 大数据实操3 - hadoop集群添加新节点
hadoop集群支持动态扩展,不需要停止原有集群节点就可以实现新节点的加入. 我是使用docker搭建的进群环境,制作了镜像文件,这里以我的工作基础为例子介绍集群中添加集群的方法 一.制作一个新节点 ...
- centos 7.4安装python3.7.4
转自https://www.cnblogs.com/zhanglong8681/p/8421512.html 1.下载安装包 Linux下默认系统自带python2.7的版本,这个版本被系统很多程序所 ...
- FortiGate 服务License注册步骤
1. 产品服务license文档 购买服务后,用户会收到一份PDF文档<Service Registration Document>,内有如下内容: 2. 登陆 https://suppo ...
- $.ajax()参数详解
来自于<锋利的jQuery(第2版)>. 参数 类型 说明 accepts Map 内容类型发送请求头,告诉服务器什么样的响应会接受返回. 如果accepts设置需要修改,推荐在$.aja ...
- mysql 聚集索引和非聚集索引问题(整理)
mysql的聚集索引和非聚集索引 前几天做了一个面试,从优化数据库谈到索引,最后问了我聚集索引和非聚集索引的问题.当时那个叫悔恨啊,平时学习mysql索引这方便的知识,也都看到了这样的字眼,,但总的来 ...
- (C#)日志接口请求响应时间
日志接口响应时间,记录接口请求信息,响应结果以及响应时间等.可以清楚的分析和了解接口状态. 如果一个一个地在接口下面做日志,那不是我们想要的结果.所以,我们选择做一个特性来控制接口要不要记录请求响应日 ...
- Windows10开机pin界面循环重启解决办法
昨天电脑在开机时,进入pin界面,输入pin码之后系统没反应,也不显示登陆成功,大概一分钟之后自动重启,遂百度答案:大部分建议都是在开机显示win图标时强制关机,强制关机两次即自动进入疑难解答页面,以 ...
- linux(centos) tomcat设置开机启动
亲测有效 环境: centos7 apache-tomcat-8.5.37 设置步骤: 1.修改/etc/rc.d/rc.local vi /etc/rc.d/rc.local 2.添加下面两行脚本, ...