網路上有很多解決方式,我想到的都匯總起來了,方便以後查看,你可能採用其中一種就能解決問題,我是用了最後一種才解決。
如果你要導入的套件在Libraries下都本身一直沒有存在,你這時就得看看pom裡對應的依賴寫的有沒有問題,名字版本什麼的在使用的倉庫中有沒有對應的jar包,如果確定沒有問題,那麼再嘗試採取以下的前幾種方式解決。
作用:重新匯入Maven套件
2種方式:
1.選擇Project 目錄右鍵-> Maven -> reload project
2.maven插件方式刷新(推薦)
作用:清除Idea 緩存,並且重啟Idea 。
很多情況下idea導致的問題透過這個方式基本上都能解決。
方式:-> 工具列 -> File -> Invalidate Caches / Restart
作用:將編碼設定成 UTF-8。
方式:都設定成UTF-8,設定完別忘記點選Apply(應用)
#方式很多:
1.點選Build選單下的rebuild
2.在maven插件下的對應項目/模組下點選1,2。 install代表重新安裝包。
當出現如題所示的錯誤時候,不用急,這是因為設定Java的套件這區塊出現了錯誤,同時可能你還沒設定讓IDEA自動載入Jar包,才會報出這種錯誤的。解決方式如下:
File—>Setting—>Build,Execution,Deployment—>Maven—>Importing
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套件不存在的問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!