Maven 的dependency 的 classifier的作用

直接看一个例子,maven中要引入json包,于是使用了

[java] view plain copy

print?

  1. <dependency>
  2. <groupId>net.sf.json-lib</groupId>
  3. <artifactId>json-lib</artifactId>
  4. <version>2.2.2</version>
  5. </dependency>

可是,当执行mvn install 命令时,却抛出一个错误,说找不到net.sf.json-lib:json-lib:2.2.2这个包,到仓库中看一下http://repo2.maven.org/maven2/net/sf/json-lib/json-lib/2.2.2/

jar的名称中多了一个跟JDK相关的名称,例如jdk15,按照上面的配置,明显是找不到这个jar的,于是classifier就有它的用武之地了,它表示在相同版本下针对不同的环境或者jdk使用的jar,如果配置了这个元素,则会将这个元素名在加在最后来查找相应的jar,例如:

[c-sharp] view plain copy

print?

  1. <dependency>
  2. <groupId>net.sf.json-lib</groupId>
  3. <artifactId>json-lib</artifactId>
  4. <version>2.2.2</version>
  5. <classifier>jdk15</classifier>
  6. </dependency>

这样配置即可找到json-lib-2.2.2-jdk15.jar ,其他的就不解释了,应该明白他的用途了吧

时间: 2024-08-28 01:58:18

Maven 的dependency 的 classifier的作用的相关文章

Maven 的classifier的作用

直接看一个例子,maven中要引入json包,于是使用了 <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.2.2</version> </dependency> 可是,当执行mvn install 命令时,却抛出一个错误,说找不到net.sf.json-lib:json-li

maven的dependency参数

一.type 有时候我们引入某一个依赖时,必须指定type,这是因为用于匹配dependency引用和dependencyManagement部分的最小信息集实际上是{groupId,artifactId,type,classifier}.在很多情况下,这些依赖关系将引用没有classifier的jar依赖.这允许我们将标识设置为{groupId,artifactId},因为type的默认值是jar,并且默认classifier为null. type的值一般有jar.war.pom等,声明引入的

maven依赖 dependency中scope=compile 和 provided区别

问题再现 上次这边朋友问我一个问题,就是他们在pom.xml中的dependency中,看到有一些是provided的情况,比如如下: <dependency> <groupId>com.liferay.portal</groupId> <artifactId>portal-impl</artifactId> <version>6.1.0</version> <scope>provided</scope&

maven依赖关系中Scope的作用

Dependency Scope 在POM 4中,<dependency>中还引入了<scope>,它主要管理依赖的部署.目前<scope>可以使用5个值: * compile,缺省值,适用于所有阶段,会随着项目一起发布.     * provided,类似compile,期望JDK.容器或使用者会提供这个依赖.如servlet.jar.     * runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段.     * test,只在测试时使用,用于编译和运

Maven---&gt;学习心得---&gt;maven的Dependency Mechanism(依赖关系机制)

1.概述: dependency management是maven所擅长的东西之一,是maven的特色功能. 参考资料:1)maven官网documentation 2) 2.maven的依赖机制 1)maven中的依赖是可传递的(transitive denpendencies) pom.xml可以继承parent pom.xml 可以自动继承该项目所依赖的三方工程(dependencies)依赖的其他工程 由于maven管理的项目,其依赖是可传递的,所以就容易出现一个问题,那就是依赖有可能形

图形化查看maven的dependency依赖

开发项目的时候,我们想知道一个maven的依赖库是来自那个工程,eclipse有插件可以直接看Dependency Hierarchy,推荐一个第三方的工具yED 在工程的pom.xml文件中添加如下plugin描述: <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin<

Eclipse 插件Maven在使用 add dependency,找不到包,解决办法

通过右键单击pom.xml文件选择maven –> add dependency 或者是打开pom.xml文件,选择dependencies –>add 时,搜索不到依赖的jar包,解决方法如下: 1.eclipse菜单 window-> show view –> other –> Maven 2.在打开的窗口里,右键 local repositories –> local repository ,选择 rebuild index 补充下: 1.确认pom.xml文件是

POM(project Object Model) Maven包管理依赖 pom.xml文件

什么是POM POM全称为“Project Object Model”,意思是工程对象模型.Maven工程使用pom.xml来指定工程配置信息,和其他文本信息.该配置文件以xml为格式,使用xml语法表明信息. 快速预览 一个pom.xml文件主要包括以下元素信息: pom.xml 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39

Maven仓库理解、如何引入本地包、Maven多种方式打可执行jar包

转载博客:http://quicker.iteye.com/blog/2319947 有关MAVEN仓库的理解参见:http://blog.csdn.net/wanghantong/article/details/36427433 MAVEN依赖关系中Scope的作用 Java代码   Dependency Scope 在POM 4中,<dependency>中还引入了<scope>,它主要管理依赖的部署.目前依赖项的作用域<scope>可以使用5个值: 在定义项目的依