首先来看这么一个依赖

<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
</dependency>

看似没问题吧?你觉得能下得下来吗?答案是否定的,下不下来。

来看看Maven的文件索引目录:

Index of /maven2/net/sf/json-lib/json-lib/2.4/

../
json-lib-2.4-jdk13.jar 2010-12-14 05:39 158091
json-lib-2.4-jdk13.jar.md5 2012-11-27 09:40 32
json-lib-2.4-jdk13.jar.sha1 2012-11-27 09:21 40
json-lib-2.4-jdk13-javadoc.jar 2010-12-14 05:39 245414
json-lib-2.4-jdk13-javadoc.jar.md5 2012-11-27 09:40 32
json-lib-2.4-jdk13-javadoc.jar.sha1 2012-11-27 09:21 40
json-lib-2.4-jdk13-sources.jar 2010-12-14 05:39 102628
json-lib-2.4-jdk13-sources.jar.md5 2012-11-27 09:40 32
json-lib-2.4-jdk13-sources.jar.sha1 2012-11-27 09:21 40
json-lib-2.4-jdk15.jar 2010-12-14 05:39 159123
json-lib-2.4-jdk15.jar.md5 2012-11-27 09:40 32
json-lib-2.4-jdk15.jar.sha1 2012-11-27 09:21 40
json-lib-2.4-jdk15-javadoc.jar 2010-12-14 05:39 248552
json-lib-2.4-jdk15-javadoc.jar.md5 2012-11-27 09:40 32
json-lib-2.4-jdk15-javadoc.jar.sha1 2012-11-27 09:21 40
json-lib-2.4-jdk15-sources.jar 2010-12-14 05:39 104992
json-lib-2.4-jdk15-sources.jar.md5 2012-11-27 09:40 32
json-lib-2.4-jdk15-sources.jar.sha1 2012-11-27 09:21 40
json-lib-2.4.pom 2010-12-14 05:39 13082
json-lib-2.4.pom.md5 2012-11-27 09:40 32
json-lib-2.4.pom.sha1 2012-11-27 09:21 40

根据Maven默认组织包的结构来看,这里根本找不到json-lib-2.4.jar的包,所以也就下不下来。

没有标准的jar包,但是有扩展的,如:json-lib-2.4-jdk15.jar,所以,这里要引入classifier这个元素了,classifier元素用来帮助定义构件输出的一些附属构件。

所以,下面这里加入classifier元素来下载扩展包json-lib-2.4-jdk15.jar。

<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>

这样就能下载对应的附属构件了。

这里拿json-lib这个包来举例,但它已经停止更新维护了,不推荐使用,推荐使用fastjson、jackson、gson等json转换框架。

Maven classifier 元素妙用的更多相关文章

  1. Maven精选系列--classifier元素妙用

    首先来看这么一个依赖 <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json- ...

  2. Maven POM元素继承

    为了减少重复代码的编写,我们需要创建POM的父子结构,然后在POM中申明一些配置供子POM继承,以实现"一处申明,多处使用的"目的.以之前的模块中的结构为基础,在account-a ...

  3. Maven —— scope 元素的值及其含义

    1.compile 缺省值,所属依赖在所有的classpath中可用,同时它们也会被打包(随着项目一起发布). 2.provided 只有当JDK或者某个容器已提供该依赖之后才使用.如servlet. ...

  4. css before,after伪元素妙用

    我们知道,css伪元素包括after,before,first-letter等,通过合理的利用伪元素,我们可以让我们的结构更简洁. 通常写法如p::after{content:' '},其中conte ...

  5. 【轻松前端之旅】<a>元素妙用

    浏览器读取服务器内容时,通过URL(包含:协议+域名+绝对路径)如:https://www.baidu.com/index.html浏览器从本地读取内容时,会用file协议.如:file:///E:/ ...

  6. maven中,dependency 中的 classifier属性

    classifier元素用来帮助定义构件输出的一些附属构件.附属构件与主构件对应,比如主构件是 kimi-app-2.0.0.jar 该项目可能还会通过使用一些插件生成 如 kimi-app-2.0. ...

  7. Maven实战:pom.xml与settings.xml

    pom.xml与settings.xml pom.xml与setting.xml,可以说是Maven中最重要的两个配置文件,决定了Maven的核心功能,虽然之前的文章零零碎碎有提到过pom.xml和s ...

  8. Maven之(七)pom.xml配置文件详解

    setting.xml主要用于配置maven的运行环境等一系列通用的属性,是全局级别的配置文件:而pom.xml主要描述了项目的maven坐标,依赖关系,开发者需要遵循的规则,缺陷管理系统,组织和li ...

  9. Maven之pom.xml配置文件详解

    此文非原创,摘自:https://www.baidu.com/link?url=GlGgW21nijIiULDZj0RfPH8ofqGMqEnAzXiym7O3hfrZM5nFH2enukemBNTX ...

随机推荐

  1. Array.prototype.push.apply(a,b)和Array.prototype.slice.call(arguments)

    Array.prototype.push.apply(a,b) 时常看到在操作数组的时候有这样的写法: var a = [1,2,3]; var b = [4,5,6]; a.push.apply(a ...

  2. ztree带有选项框的树形菜单使用

    1.ztree简介 zTree 是一个依靠 jQuery 实现的多功能 “树插件”.优异的性能.灵活的配置.多种功能的组合是 zTree 最大优点.专门适合项目开发,尤其是 树状菜单.树状数据的Web ...

  3. Java中CountDownLatch和CyclicBarrier

    Java编程思想中的例子import javax.validation.constraints.Size; import java.util.Random; import java.util.conc ...

  4. [剑指Offer]5-替换空格

    链接 https://www.nowcoder.com/practice/9023a0c988684a53960365b889ceaf5e?tpId=13&tqId=11210&tPa ...

  5. swift - UIButton按钮有图片是点击高亮 有灰色动画

    取消 高亮的 动画 btn.adjustsImageWhenHighlighted = false btn.layer.removeAllAnimations()

  6. Linux系统minicom命令详解

    minicom 功能说明:调制解调器通信程序 语 法:minicom [-8lmMostz][-a<on或0ff>][-c<on或off>][-C<取文件>][-d ...

  7. Add-Migration : 无法将“Add-Migration”项识别为 cmdlet、函数、脚本文件或可运行程序的名称

    解决办法: PM>Import-Module C:\Users\Administrator.MACKJON\.nuget\packages\entityframework\6.2.0\tools ...

  8. zabbix安装(Ubuntu)

    zabbix的安装 Zabbix监控架构至少需要server,agent,web模块.mysql.web部分和server安装在同一台机器上. Zabbix安装前服务器要做时间同步(ntp) 1.创建 ...

  9. linux ">/dev/null 2>&1 &"

    0:表示键盘输入(stdin)1:表示标准输出(stdout),系统默认是1 2:表示错误输出(stderr) command >/dev/null 2>&1 &  == ...

  10. IOS xib和代码自定义UIView

    https://www.jianshu.com/p/1bcc29653085 总结的比较好 iOS开发中,我们常常将一块View封装起来,以便于统一管理内部的子控件. 下面就来说说自定义View的封装 ...