maven報錯找不到符號怎么解決-創(chuàng)新互聯(lián)

本篇內容介紹了“maven報錯找不到符號怎么解決”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

創(chuàng)新互聯(lián)自2013年創(chuàng)立以來,先為礦區(qū)等服務建站,礦區(qū)等地企業(yè),進行企業(yè)商務咨詢服務。為礦區(qū)企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務解決您的所有建站問題。

語言:Java和Scala并用 
場景:存在java調用scala代碼的情況 
maven版本:3.5.1 
IDE:IDEA 2017.1

<h3 id="maven報錯找不到符號"  white-space:normal;background-color:#ffffff;"=""> maven報錯:找不到符號

并列出找不到的類或程序所在的程序包、位置

在一開始遇到maven問題時,網(wǎng)路上可以搜到的資料基本支持以下幾種情況: 
1.清理cache 
使用mvn clean命令清理 
使用IDEA里面的Invalid Cache清理 
2.編碼格式不統(tǒng)一 
在pom.xml中將compiler的編碼格式設為UTF-8

3.IDE和項目本身的jdk版本不統(tǒng)一 
檢查IDE編譯使用的jdk版本和在pom.xml中配置的jdk版本是否統(tǒng)一 
4.pom的依賴問題
以上4種情況的解決方法,詳細可參考 http://blog.csdn.net/u012062455/article/details/52347099。

上述問題是在網(wǎng)路中搜索得到的主要幾種情況,但和我的情況均不相符,無法解決我的問題。

對錯誤進行定位后,我發(fā)現(xiàn),項目中的scala代碼和java代碼均可以正常單獨編譯,但同時編譯會報錯。首先,排除了代碼位于不同包的情況的影響;進一步定位后發(fā)現(xiàn),錯誤出現(xiàn)在,使用java代碼調用scala代碼時,也就是說,我在java代碼中,只要import了scala的類,就會報錯。

原因定位后,在stackoverflow的一個不太相關的問題的評論中看到了這樣一句話,大意是,若在java代碼中調用了scala代碼,則需先編譯scala代碼,后編譯java代碼。

這句話以后,茅塞頓開,現(xiàn)給出兩種解決方法:

  • 使用mvn命令控制編譯順序

    • 在pom.xml里面配置編譯順序 
      這部分我研究不深,因此只給出一個成功的配置方案。

    • 以上兩種方法均可以編譯成功,解決以上maven報錯。

      下面將敘述一個我比較困惑的情況,望不吝解答。 
      我將列出一個pom.xml的示例,里面也有配置scala-compile的順序,使用scala-compile-first這樣的字樣進行控制。 
      但該配置,在實際使用中,在工程1里可行,但工程2里會報錯,然而我兩個工程里的配置,順序幾乎放的一樣,只不過工程2中可能多引入了很多dependency,配置如下:

      這是我失敗情況的配置,不要使用。

      這里的scala-compile-first起到的是什么作用,為什么失效了呢?

      在找到問題所在之后,再進行搜索,發(fā)現(xiàn)已有文檔提出,若使用java調用scala,需要先編譯scala的情況,比如/tupian/20230522/5730552.html

      由此可見,對于自己需要查找的問題, 關鍵詞總結的本領,還要繼續(xù)加強。

“maven報錯找不到符號怎么解決”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注創(chuàng)新互聯(lián)-成都網(wǎng)站建設公司網(wǎng)站,小編將為大家輸出更多高質量的實用文章!

網(wǎng)頁標題:maven報錯找不到符號怎么解決-創(chuàng)新互聯(lián)
文章位置:http://muchs.cn/article18/cdjcgp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、App開發(fā)網(wǎng)站導航、服務器托管、靜態(tài)網(wǎng)站、品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設