最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解IDEA使用Maven項(xiàng)目不能加入本地Jar包的解決方法

 更新時(shí)間:2020年08月23日 10:53:59   作者:lvshaorong  
這篇文章主要介紹了詳解IDEA使用Maven項(xiàng)目不能加入本地Jar包的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

使用IDEA編輯Web項(xiàng)目已經(jīng)逐漸超過(guò)了使用eclipse的人數(shù),但是IDEA對(duì)于pom.xml的執(zhí)行也就是Maven方式導(dǎo)包支持并不是很完善,簡(jiǎn)單來(lái)說(shuō)就是pom.xml上面記錄的依賴庫(kù)一般都能導(dǎo)入,但是如果pom.xml上面的某個(gè)依賴庫(kù)失效,比如遠(yuǎn)程服務(wù)器關(guān)閉或者網(wǎng)絡(luò)不通,或者是你想要加入本地硬盤上的某個(gè)jar包而不修改pom.xml的時(shí)候,IDEA的弊端就會(huì)顯現(xiàn)出來(lái)。主要表現(xiàn)就是無(wú)法獲得的依賴庫(kù)或者本地Jar包無(wú)法放到/WEB-INF/lib目錄下,導(dǎo)致Web項(xiàng)目部署時(shí)報(bào)錯(cuò)。

一個(gè)常見(jiàn)的錯(cuò)誤就是ojdbc8,也就是連接Oracle數(shù)據(jù)庫(kù)12c所需的最新的jdbc驅(qū)動(dòng)包,這個(gè)在maven網(wǎng)站上是可以搜索到的,如下http://mvnrepository.com/artifact/com.github.noraui/ojdbc8/12.2.0.1

給出的依賴庫(kù)網(wǎng)絡(luò)路徑為

<!-- https://mvnrepository.com/artifact/com.github.noraui/ojdbc8 -->
<dependency>
  <groupId>com.github.noraui</groupId>
  <artifactId>ojdbc8</artifactId>
  <version>12.2.0.1</version>
</dependency>

然而這個(gè)路徑在2015年還有效,在2018年已經(jīng)連接不上了(目前唯一還有效的是ojdbc for java 1.4的版本,2015年,無(wú)法支持oracle 10g及以后的數(shù)據(jù)庫(kù)),如果你在maven里這樣配置,那么IDEA的models里就會(huì)告訴你找不到該依賴庫(kù),當(dāng)然你的WEB-INF里面也就不會(huì)有jdbc的jar包,你的應(yīng)用當(dāng)然就連接不了數(shù)據(jù)庫(kù)了

IDEA會(huì)貼心的在相關(guān)maven依賴庫(kù)下面加波浪線,并且把無(wú)法加載的資源用紅色表示。

如果此時(shí)我們手動(dòng)向Libraries里面加入本地的Jar包可不可以呢?

能加當(dāng)然是能加進(jìn)去,不過(guò)根據(jù)我多次的反復(fù)實(shí)驗(yàn)發(fā)現(xiàn),你加入到Project Structure里面的Models或者Libraries里面之后,編寫代碼的時(shí)候是可以找到依賴的,但是在打war包的時(shí)候還是不會(huì)把ojdbc加入進(jìn)去的,所以還是沒(méi)能達(dá)到我們想要的效果。這主要是因?yàn)镮DEA只會(huì)把pom.xml里面記錄的jar包放入到WEB-INF,而不會(huì)理睬你其他方式加入的jar包。所以我們最后還得從maven入手。

此時(shí)我們就需要在上圖出現(xiàn)問(wèn)題的地方找到標(biāo)紅色的Classes下面的路徑,通過(guò)手動(dòng)點(diǎn)擊來(lái)修改成本地jar包的位置,并且應(yīng)該變?yōu)榫G色,如下

這樣IDEA就不會(huì)把這個(gè)maven源報(bào)錯(cuò)了,同時(shí)pom.xml并沒(méi)有被修改,只是項(xiàng)目目錄下.idea目錄下的某個(gè).iml被修改了,這個(gè)修改要好好保留,因?yàn)椴恢朗裁磿r(shí)候你一編譯就又會(huì)按照pom.xml再給你改回來(lái)。如果需要長(zhǎng)期不讓它報(bào)錯(cuò),可以使用cmd命令把本地的jar包加入到本地maven庫(kù)中,命令如下:(把當(dāng)前目錄下的ojdbc8.jar按照上面的pom.xml中的配置加入到本地maven源)

mvn install:install-file -Dfile=ojdbc8.jar -DgroupId=com.github.noraui -DartifactId=ojdbc8 -Dversion=12.2.0.1 -Dpackaging=jar

另外如果不把maven里面自己設(shè)置的jar包輸出到web根目錄lib文件夾的話,那么打出來(lái)的war包或者是放在tomcat里跑還是會(huì)在啟動(dòng)的時(shí)候報(bào)錯(cuò),如下就是使用了HttpClient也在maven里加入了HttpClient的依賴,但是啟動(dòng)tomcat仍然報(bào)錯(cuò)找不到類,此時(shí)你需要按照tomcat的一貫套路把相關(guān)jar包放到web根目錄的lib目錄下

此時(shí)還是進(jìn)入Project Structure,在左側(cè)找到Artifacts,然后找到WEB-INF,新建一個(gè)lib目錄,然后點(diǎn)擊加號(hào)把相關(guān)的庫(kù)引入

加完之后

只有這樣,打出來(lái)的war包的WEB根目錄下才會(huì)有l(wèi)ib文件夾和里面的相關(guān)依賴jar包

如果你發(fā)現(xiàn)修改了這里還沒(méi)有把自定義的jar包打包到WEB-INF下面(只是在代碼窗口里不報(bào)錯(cuò)了),一個(gè)可能性是在編譯過(guò)程中剛剛的修改又被pom.xml給覆蓋了,另一個(gè)原因可能是你沒(méi)有把編譯結(jié)果輸出到待發(fā)布目錄,通過(guò)下面的方式可以修改。

 后記:在沒(méi)有使用maven框架的時(shí)候,java文件和包是可以直接放在src目錄下的,但是引入maven之后,IDEA會(huì)自動(dòng)幫你吧原來(lái)src下的包遷移到src/main/java下面,同時(shí)建立src/main/resources目錄,這里面一般放我們的log4j配置文件log4j.properties。

在沒(méi)有maven框架的時(shí)候,log4j.propertise應(yīng)該放在src下面才能被自動(dòng)識(shí)別,而加入maven框架之后應(yīng)該放在src/main/resources下,否則log4j找不到默認(rèn)配置文件

如下:在不使用maven框架時(shí)的目錄結(jié)構(gòu),所有jar包都是放在項(xiàng)目根目錄下

使用maven后的目錄結(jié)構(gòu),沒(méi)有jar包了,以pom.xml進(jìn)行引入

另外還需要注意的一點(diǎn)就是,對(duì)于pom.xml里面和idea里面均有多出設(shè)置JDK版本的地方,最好統(tǒng)一,否則無(wú)法build成功,首先是pom.xml

<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
  </properties>
  <groupId>groupId</groupId>
  <artifactId>XDphone</artifactId>
  <version>1.0-SNAPSHOT</version>
  <dependencies>
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>fastjson</artifactId>
      <version>1.2.51</version>
    </dependency>
    ......

  </dependencies>
</project>

然后是項(xiàng)目代碼風(fēng)格

然后是編譯器版本在File-Settings里面

這樣就能避免internal compiler error了

相關(guān)文章

  • IDEA在SpringBoot項(xiàng)目使用Maven打包后jar包太小問(wèn)題及解決

    IDEA在SpringBoot項(xiàng)目使用Maven打包后jar包太小問(wèn)題及解決

    這篇文章主要介紹了IDEA在SpringBoot項(xiàng)目使用Maven打包后jar包太小問(wèn)題及解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • springboot-controller的使用詳解

    springboot-controller的使用詳解

    本篇文章主要介紹了springboot-controller的使用詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-08-08
  • Java實(shí)現(xiàn)FTP上傳與下載功能

    Java實(shí)現(xiàn)FTP上傳與下載功能

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)FTP上傳與下載功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • SpringBoot項(xiàng)目啟動(dòng)報(bào)錯(cuò)"找不到或無(wú)法加載主類"的解決方法

    SpringBoot項(xiàng)目啟動(dòng)報(bào)錯(cuò)"找不到或無(wú)法加載主類"的解決方法

    在使用 IntelliJ IDEA 開發(fā)基于 Spring Boot 框架的 Java 程序時(shí),可能會(huì)出現(xiàn)找不到或無(wú)法加載主類 com.example.springboot.SpringbootApplication的錯(cuò)誤提示,下面我們來(lái)看看如何解決吧
    2025-03-03
  • Java漢字轉(zhuǎn)拼音工具類完整代碼實(shí)例

    Java漢字轉(zhuǎn)拼音工具類完整代碼實(shí)例

    這篇文章主要介紹了java漢字轉(zhuǎn)拼音工具類完整代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Spring之詳解bean的實(shí)例化

    Spring之詳解bean的實(shí)例化

    這篇文章主要介紹了Spring之詳解bean的實(shí)例化,文章內(nèi)容詳細(xì),簡(jiǎn)單易懂,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2023-01-01
  • 基于OpenID?Connect及Token?Relay實(shí)現(xiàn)Spring?Cloud?Gateway

    基于OpenID?Connect及Token?Relay實(shí)現(xiàn)Spring?Cloud?Gateway

    這篇文章主要介紹了基于OpenID?Connect及Token?Relay實(shí)現(xiàn)Spring?Cloud?Gateway,Spring?Cloud?Gateway旨在提供一種簡(jiǎn)單而有效的方式來(lái)路由到API,并為API提供跨領(lǐng)域的關(guān)注點(diǎn),如:安全性、監(jiān)控/指標(biāo)和彈性
    2022-06-06
  • PowerJob LockService方法工作流程源碼解讀

    PowerJob LockService方法工作流程源碼解讀

    這篇文章主要為大家介紹了PowerJob LockService方法工作流程源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • java struts2框架簡(jiǎn)介

    java struts2框架簡(jiǎn)介

    本文主要介紹了java struts2框架的基礎(chǔ)知識(shí)。具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧
    2017-01-01
  • 詳解關(guān)于SpringBoot的外部化配置使用記錄

    詳解關(guān)于SpringBoot的外部化配置使用記錄

    這篇文章主要介紹了詳解關(guān)于SpringBoot的外部化配置使用記錄,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05

最新評(píng)論

临夏县| 石屏县| 玛多县| 阳信县| 安国市| 寻甸| 黄冈市| 永宁县| 韶山市| 米脂县| 宿迁市| 伊川县| 西充县| 平度市| 昌邑市| 盘山县| 河津市| 临猗县| 柯坪县| 忻州市| 新营市| 汽车| 裕民县| 井研县| 江源县| 龙里县| 葫芦岛市| 麻城市| 五家渠市| 安图县| 渭南市| 永善县| 平定县| 大悟县| 木里| 永川市| 博客| 南丰县| 顺义区| 湘阴县| 尼玛县|