Maven:第一章:關(guān)于maven依賴死活都下載不了終極解決方案

項(xiàng)目想下載一個(gè)依賴,在idea中死都下不了,查看網(wǎng)上各種解決方案都沒(méi)有效果,出絕招,我使用命令下載導(dǎo)入到maven倉(cāng)庫(kù)

類似這種命令:mvn install:install-file -Dfile=d:\setup\dubbo-2.8.4.jar -DgroupId=com.alibaba -DartifactId=dubbo -Dversion=2.8.4 -Dpackaging=jar

舉例:

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

上面這個(gè)是我要下載的依賴

先去中央倉(cāng)庫(kù),下好包。我這里把下載的包放到setup文件夾下

 

 








使用cmd打開命令行輸入mvn install:install-file -Dfile=d:\setup\json-lib-2.4-jdk15.jar -DgroupId=net.sf.json-lib -DartifactId=json-lib -Dversion=2.4 -Dpackaging=jar回車就搞定了

再來(lái)一個(gè)例子:

我在進(jìn)行string類型,json類型,map類型轉(zhuǎn)化時(shí),除了fastjson依賴還加了上面的依賴,但是運(yùn)行時(shí)再次報(bào)錯(cuò)java.lang.ClassNotFoundException: net.sf.ezmorph.Morpher

原因分析:
使用JSON時(shí),除了要導(dǎo)入JSON網(wǎng)站上面下載的json-lib-2.2-jdk15.jar包之外,
還必須有其它幾個(gè)依賴包:
commons-beanutils.jar,commons-httpclient.jar,commons-lang.jar,ezmorph.jar,morph-1.0.1.jar 這幾個(gè)包也是需要導(dǎo)入的.
如果缺少里面的:ezmorph.jar包,則即出現(xiàn)上述異常。
 
解決辦法:
在pom.xml中添加依賴:

    <dependency>
        <groupId>net.sf.ezmorph</groupId>
        <artifactId>ezmorph</artifactId>
        <version>1.0.6</version>
    </dependency>
所以還要加一個(gè)依賴

先去倉(cāng)庫(kù)服務(wù)https://maven.aliyun.com/mvn/search

 

 

下載jar包放到setup文件夾(這個(gè)文件夾名字自己起)和命令對(duì)應(yīng)就行

 










運(yùn)行cmd打開命令窗口,輸入命令:

mvn install:install-file -Dfile=d:\setup\ezmorph-1.0.6.jar -DgroupId=net.sf.ezmorph -DartifactId=ezmorph -Dversion=1.0.6 -Dpackaging=jar

如果出現(xiàn)這個(gè)

 

 

仔細(xì)觀察你的命令:我的命令是net.sf.ezmorph-DartifactId在-之前要加空格

mvn compile  沒(méi)有問(wèn)題,mvn package的時(shí)候報(bào)如下錯(cuò)誤:

Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.5:test

解決方法:
打包跳過(guò)測(cè)試有兩種方法
一是命令行,
mvn clean package -Dmaven.test.skip=true
二是寫入pom文件,
<plugin>  
        <groupId>org.apache.maven.plugins</groupId>  
        <artifactId>maven-surefire-plugin</artifactId>  
        <version>2.4.2</version>  
        <configuration>  
          <skipTests>true</skipTests>  
        </configuration>  
</plugin>  
在項(xiàng)目的pom.xml中加上依賴

如果出現(xiàn)這個(gè)

 

 

說(shuō)明已經(jīng)搞好了

舉例:

mvn install:install-file -Dfile=d:\setup\commons-beanutils-1.9.2.jar -DgroupId=commons-beanutils -DartifactId=commons-beanutils -Dversion=1.9.2 -Dpackaging=jar