Maven 錯(cuò)誤找不到符號(hào)的解決方法
Maven 錯(cuò)誤找不到符號(hào)問題,通常有三種原因:
1. 可能項(xiàng)目編碼格式不統(tǒng)一。
2. 可能項(xiàng)目編碼使用的JDK版本不統(tǒng)一。
3. pom依賴問題,這種依賴可能是沒有添加包的依賴,如果是聚合項(xiàng)目可能是沒有添加其他模塊的依賴,或者是添加了其它模塊的依賴,但是沒有將依賴的模塊打包到本地倉(cāng)庫(kù)等。
當(dāng)碰到maven錯(cuò)誤:找不到符號(hào)問題時(shí),通常第一反應(yīng)應(yīng)該是執(zhí)行eclipse的Project -> Clean … -> Clean all projects,然后再執(zhí)行maven clean,將項(xiàng)目清理一下,然后再試試,如果還是不能解決接著往下看。
如果是第一個(gè)問題:項(xiàng)目編碼格式不統(tǒng)一
可以在pom.xml文件中加上這樣的配置
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.3</version> <configuration> <source>1.7</source> <target>1.7</target> <encoding>UTF-8</encoding> </configuration> </plugin>
將項(xiàng)目編碼設(shè)置成UTF-8,但是要注意source和target版本,下面會(huì)說
如果是第二個(gè)問題:項(xiàng)目編碼使用的JDK版本不統(tǒng)一
1、首先檢車一下pom.xml文件設(shè)置的jdk版本,就是上面這幾行代碼中的encoding,source指明支持的jdk版本,target指明項(xiàng)目打包后的jdk版本。
2、查看項(xiàng)目本身的jdk版本,點(diǎn)擊項(xiàng)目右鍵->build path->configure build path… ,然后設(shè)置項(xiàng)目的jdk版本。
3、再看看編譯器的版本,通常這個(gè)版本都是默認(rèn)與你項(xiàng)目設(shè)置的jdk版本一致,但是最好還是檢查一下點(diǎn)擊項(xiàng)目右鍵properties->java compiler
4、最后如果你是web項(xiàng)目,檢查一下tomcat的版本,點(diǎn)擊window->preferences->server->runtime environment
實(shí)際上檢查版本主要還是前面兩步,一個(gè)是pom.xml配置,一個(gè)是項(xiàng)目本身設(shè)置的jdk版本,最后兩個(gè)實(shí)際上可以不用檢查,編譯版本通常都是和你項(xiàng)目本身設(shè)置的jdk版本默認(rèn)一致,而tomcat的jdk版本設(shè)置不正確,出現(xiàn)的問題不會(huì)是符號(hào)錯(cuò)誤。(第一次開發(fā)maven web項(xiàng)目時(shí)就是jdk設(shè)置得不正確,結(jié)果項(xiàng)目啟動(dòng)之后,打開瀏覽器登陸進(jìn)去之后就是一些錯(cuò)誤異常,當(dāng)時(shí)使用的是jre,沒有使用jdk,這里提醒大家做開發(fā)時(shí)最好使用jdk不要使用jre,有些項(xiàng)目在jre環(huán)境下是會(huì)出現(xiàn)問題的,而jdk中存在一些jre沒有的開發(fā)工具)。
如果是第三種情況:Pom依賴問題
那就要仔細(xì)檢查了,maven麻煩就麻煩在pom文件的配置,和它的一些依賴關(guān)系。最簡(jiǎn)單的情況就是你沒有為相應(yīng)的jar包配置依賴,這種情況只要在pom.xml中添加相應(yīng)jar包依賴就可以了,如果是聚合項(xiàng)目的話可能是你這個(gè)項(xiàng)目依賴其它的項(xiàng)目,那就要在你這項(xiàng)目pom.xml中配置其它項(xiàng)目的依賴。同時(shí)在編譯這個(gè)項(xiàng)目前,要將你依賴的其它項(xiàng)目打包到本地倉(cāng)庫(kù),不然這個(gè)依賴是無效的。
maven 錯(cuò)誤找不到符號(hào)這個(gè)問題,大體上就是上面幾種情況,這篇文章只能提供一種參考,基于以上三種情況而衍生出來的其它情況也會(huì)導(dǎo)致錯(cuò)誤找不到符號(hào)這個(gè)問題,這句需要大家伙自己慢慢查找了。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaEE實(shí)現(xiàn)前后臺(tái)交互的文件上傳與下載
這篇文章主要介紹了JavaEE實(shí)現(xiàn)前后臺(tái)交互的文件上傳與下載,分享相關(guān)技術(shù),實(shí)現(xiàn)文件上傳下載功能,需要的朋友可以參考下2015-11-11Quarkus的Spring擴(kuò)展快速改造Spring項(xiàng)目
這篇文章主要為大家介紹了Quarkus的Spring項(xiàng)目擴(kuò)展,帶大家快速改造Spring項(xiàng)目示例演繹,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-02-02Java 添加、刪除、替換、格式化Word中的文本的步驟詳解(基于Spire.Cloud.SDK for Java)
這篇文章主要介紹了Java 添加、刪除、替換、格式化Word中的文本(基于Spire.Cloud.SDK for Java),本文分步驟通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08springboot 多模塊將dao(mybatis)項(xiàng)目拆分出去
這篇文章主要介紹了springboot 多模塊將dao(mybatis)項(xiàng)目拆分出去,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-05-05Java面向?qū)ο笾甪inal關(guān)鍵字詳細(xì)解讀
這篇文章主要介紹了Java面向?qū)ο笾甪inal關(guān)鍵字詳細(xì)解讀,final修飾的屬性又叫常量,一般用 XX_XX_XX來命名,final修飾的屬性在定義時(shí)必須賦初始值,并且以后不能再修改,需要的朋友可以參考下2024-01-01java實(shí)現(xiàn)會(huì)反彈的小球示例
這篇文章主要介紹了java實(shí)現(xiàn)會(huì)反彈的小球示例,需要的朋友可以參考下2014-04-04