要在maven中添加json依赖包,网上说添加本地包的方法是用cmd运行:
mvn install:install-file -Dfile=jar包的位置 -DgroupId=上面的groupId -DartifactId=上面的artifactId -Dversion=上面的version -Dpackaging=jar
最好的办法是,把jar安装到你本地协作的maven 资源库中,不然你的同事检出这个maven 项目就惨了,因为TA 本地没有install 这个jar,所以必定会报缺少jar。
这种发放确实能生成jar包的配置文件,但是由于是json-lib-2.2.3-jdk15.jar,配置文件中又多了一个json-lib-2.2.3.jar,运行文件找不到路径,把这个jar包删了还是报同样的错误。试试其他不针对jdk版本的包 ,成功。
例如:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>1.1.1</version>
</dependency>
在本地仓库中创建javax\servlet\servlet-api\1.1\文件夹下添加jar就ok
哎......
按照这种方法试试,由于json-lib对不同的jdk版本有不同的jar包,需要在添加依赖的时候用classfier属性来指定使用哪个版本的
随便打开我的一个项目,在pom.xml中写道:
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.2.3</version>
<classifier>jdk15</classifier>
</dependency>
神奇的事情发生了,刚在maven库中还没看到net/sf/json-lib/json-lib/2.2.3这个路径,写完保存再查看竟然奇迹般的出现了,并且打开这个路径下面还出现了好几个配置文件:
_maven.repositories
json-lib-2.2.3.pom
json-lib-2.2.3.pom.sha1
json-lib-2.2.3-jdk15.jar
json-lib-2.2.3-jdk15.jar.sha1,就连jar包也自动下载好了
如果随便写一个dependency也会创建路径,但是下面的配置文件只有两个:
<dependency>
<groupId>net.sf.json-lib1</groupId>
<artifactId>json-lib1</artifactId>
<version>2.2.31</version>
</dependency>
配置文件:
json-lib1-2.2.31.jar.lastUpdated
json-lib1-2.2.31.pom.lastUpdated
这是由于随便写的包在网上找不到,所以下载不了
建议如果没网就用在cmd运行一句话,如果有网就用第二种直接配置文件写好eclipse自动从网上加载。
参考文章:http://www.blogjava.net/fancydeepin/archive/2012/06/12/380605.html
http://maven.group.iteye.com/group/topic/21617
心得:好多东西都对底层的东西不了解,而你又要用,对于这种情况不要追根究底,根据一种现象推出一种规律,能用就好。