JDK21無法導(dǎo)入TimeUnit類的解決辦法
運(yùn)行環(huán)境:windows11、IDEA2023.1.3、JDK21
問題描述:IDEA中無法導(dǎo)入java.util.concurrent.TimeUnit類。
以下截圖是問題解決后的截圖。有問題的時(shí)候未截圖,說明一下,有問題的時(shí)候TimeUnit類是紅色的,無法導(dǎo)入,查看JDK下面的java.util.concurrent包,會(huì)發(fā)現(xiàn)有這個(gè)類,注意的是,這時(shí)候這個(gè)類是.class文件,點(diǎn)開的話能看到源碼,但是會(huì)提示"decompiled .class file bytecode version:65.0(Java 21)",意思就是這個(gè)類是反編譯過來的。注意區(qū)分一下下圖里面,顯示的是java文件,這才是正常的。


解決辦法是升級(jí)IDEA的版本,升級(jí)到2023.1.5后可以正常導(dǎo)入。我是直接通過update升級(jí)的,自動(dòng)升級(jí)到1.5,我看官網(wǎng)可以下載的最新版是Version: 2023.2.5。PS:有興趣的可以去看看BUG修復(fù)的日志。
另,如果遇到類似的問題,可以先嘗試清空下IDEA緩存,重啟IDEA的時(shí)候選擇“Invalidate and Restart”,一般可以解決項(xiàng)目中有這個(gè)類但是import不了的問題。

TimeUnit vs Thread.sleep()
目前我們討論使用TimeUnit的好處是提高了可讀性,但是有時(shí)候覺得其他方法更好,因?yàn)門hread.sleep()伴隨java很早就出現(xiàn)了,幾乎所有程序員都知道Thread.sleep(),都知道是將當(dāng)前線程暫停,而對(duì)TimeUnit并不太熟悉。兩個(gè)原因:一是對(duì)比起Thread.sleep(),TimeUnit不是很常用,第二是在它不在Thread類中,就像wait和notify同樣不是在Thread中,反正這些需要一段時(shí)間才能被采用,并成為一個(gè)標(biāo)準(zhǔn)的方式。
總結(jié)來說在你想用Thread.sleep()方法的地方你最好使用TimeUnit.sleep()方法來代替。它不盡可以提高代碼的可讀性而且能更加熟悉java.util.concurrent包,因?yàn)門imeUnit在并發(fā)編程中也是一個(gè)關(guān)鍵API
總結(jié)
到此這篇關(guān)于JDK21無法導(dǎo)入TimeUnit類解決辦法的文章就介紹到這了,更多相關(guān)JDK21無法導(dǎo)入TimeUnit類內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java中ByteArrayOutputStream亂碼問題解決
本文主要介紹了Java中ByteArrayOutputStream亂碼問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
Java源碼解析ThreadLocal及使用場(chǎng)景
今天小編就為大家分享一篇關(guān)于Java源碼解析ThreadLocal及使用場(chǎng)景,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-01-01
基于Transactional事務(wù)的使用以及注意說明
這篇文章主要介紹了Transactional事務(wù)的使用以及注意說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07
springboot利用aspose預(yù)覽office文件的實(shí)現(xiàn)過程
這篇文章主要給大家介紹了關(guān)于springboot利用aspose預(yù)覽office文件的相關(guān)資料,文中通過示例代碼以及圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考價(jià)值,需要的朋友可以參考下2021-06-06
java 重定義數(shù)組的實(shí)現(xiàn)方法(與VB的ReDim相像)
java 重定義數(shù)組的實(shí)現(xiàn)方法(與VB的ReDim相像),需要的朋友可以參考一下2013-04-04
SpringBoot中@RestControllerAdvice注解的使用
這篇文章主要介紹了SpringBoot中@RestControllerAdvice注解的使用,@RestControllerAdvice主要用精簡(jiǎn)客戶端返回異常,它可以捕獲各種異常,需要的朋友可以參考下2024-01-01

