Java ImageIO.read(getClass()。getResource())返回null
假設(shè)您的課程在package中view.random.name,則
getClass().getResource('gate_and.png')
會(huì)在以下位置尋找資源
/view/random/name/gate_and.png
相對(duì)于類路徑的根。您顯然那里沒有該名稱的資源。
通過設(shè)置project/images為構(gòu)建路徑條目,Eclipse將在類路徑中包括所有內(nèi)容。因此,您的資源將顯示在
/gate_and.png
您可以使用
getClass().getResource('/gate_and.png')
請(qǐng)注意 開頭/,這意味著 開始查看類路徑的根 ,即。這是一條絕對(duì)的道路。
所有這些規(guī)則在javadoc中進(jìn)行了解釋。
解決方法線
andImg = ImageIO.read(getClass().getResource('gate_and.png'));
失敗于
Exception in thread 'AWT-EventQueue-0' java.lang.IllegalArgumentException: input == null!
我正在使用Eclipse,并且在bin文件夾下的導(dǎo)航視圖中有文件gate_and.png,表明該文件位于構(gòu)建路徑中。
在包瀏覽器視圖中,我有
project/src/view/class - This is the class that has the code above.
和
project/images/gate_and.png
我右鍵單擊項(xiàng)目文件夾>構(gòu)建路徑>鏈接源以將images文件夾添加為源,再次執(zhí)行此操作會(huì)提供一條確認(rèn)消息,指出源中已存在圖像。
我還嘗試過將gate_and.png更改為images /gate_and.png和/images/gate_and.png,但是由于圖像gate_and.png在bin文件夾中,因此我認(rèn)為原始圖片是正確的。
相關(guān)文章:
1. Docker for Mac 創(chuàng)建的dnsmasq容器連不上/不工作的問題2. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.3. javascript - 請(qǐng)教空白文本節(jié)點(diǎn)的問題4. 刷新頁面出現(xiàn)彈框5. PC 手機(jī)兼容的 編輯器6. javascript - 前端開發(fā) 本地靜態(tài)文件頻繁修改,預(yù)覽時(shí)的緩存怎么解決?7. javascript - 怎么看網(wǎng)站用了什么技術(shù)框架?8. ios - 類似微博首頁,一張圖的時(shí)候是如何確定圖大小的?9. javascript - 用js實(shí)現(xiàn)遠(yuǎn)程js調(diào)用時(shí)出現(xiàn)時(shí)間機(jī)制問題怎樣解決?10. java報(bào)錯(cuò)Communications link failure 該如何解決?
