網上有很多解決方式,我想到的都匯總起來了,方便以后查看,你可能采用其中一種就能解決問題,我是用了最后一種才解決。
如果你要導入的包在Libraries下都本身一直沒有存在,你這時就得看看pom里對應的依賴寫的有沒有問題,名字版本什么的在使用的倉庫中有沒有對應的jar包,如果確定沒有問題,那么再嘗試采取以下的前幾種方式解決。
1. 執行Maven ->reload project
作用:重新導入Maven包
2種方式:
1.選擇 Project 目錄右鍵 -> Maven -> reload project
2.maven插件方式刷新(推薦)
2. 執行 Invalidate and Restart
作用:清除 Idea 緩存,并且重啟 Idea。
很多情況下idea導致的問題通過這個方式基本都能解決。
方式:-> 工具欄 -> File -> Invalidate Caches / Restart
3. 統一編碼
作用:將編碼設置成 UTF-8。
方式:都設置成UTF-8,設置完別忘記點擊Apply(應用)
4. 重新編譯
方式很多:
1.點擊Build菜單下的rebuild
2.在maven插件下的對應項目/模塊下點擊1,2。install代表重新安裝包。
5. 設置idea自動加載jar包
當出現如題所示的錯誤時候,不用著急,這是因為配置Java的程序包這塊出現了錯誤,同時可能你還沒有設置讓IDEA自動加載Jar包,才會報出這種錯誤的。解決方式如下:
File―>Setting―>Build,Execution,Deployment―>Maven―>Importing
6.刪除本地的私有倉庫后,再更新maven,重新加載
ps:我出現的問題用以上方式都沒能解決,用接下來的才解決了。希望你不需要看到這里。
8.如果以上方式都沒能解決,那毋庸置疑是idea的問題,如果你用的是2020.1~3版的,那有問題的概率更大
解決方式:將IDEA 的 build/run 動作如果委托給了 maven
此時再重新編譯運行,能正常通過。
但是,如果你感覺啟動變慢的話,你要檢查下是不是編譯了兩遍,可以寫個測試類,一編譯啟動就插入一條數據,看數據庫是否會有兩條;也可以直接看idea下面的編譯框。
為什么會編譯兩遍呢?
上述委托給maven勾選后,找不到包的問題解決后,但是可能maven插件和idea會先后各編譯了一遍。
解決方式:將pom.xml里的編譯插件換成
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.22.1</version> <configuration> <skipTests>true</skipTests> </configuration> </plugin>
這時發現只會編譯一遍了。本地通過idea啟動項目不會有什么問題了。
但是,當你將項目打成包,通過jar方式啟動時,可能出現報錯,找不到主屬性,當然了,沒有更好,有的話,繼續補充下面的代碼就行。
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin>
綜上所述:我試過所有的方式之后,最終是用最后的方式解決的問題,然后又一步一步發現了新的問題,如果你和我一樣,那不用浪費時間了,直接照我的來就行。若能幫助到你,別的不要,點個贊就行,謝謝了。
到此這篇關于解決import包時報 Java 程序包不存在的問題的文章就介紹到這了,更多相關Java import包內容請搜索服務器之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持服務器之家!
原文鏈接:https://blog.csdn.net/weixin_45067224/article/details/120825796