2012-08-05 36 views
1

奇怪FileNotFoundException異常所以,我一對夫婦的圖像爲我的Eclipse視圖插件。完美的作品。我第二天醒來,程序現在告訴我它不能再找到這些文件。這些文件肯定還是在我留下的同一個地方,而且我在24小時內沒有觸及過這些代碼。我一直在搞亂這一個小時,我甚至不知道一開始調試這個地方,我的計劃是罰款昨天。與圖片

Sample.gif是我的插件的「圖標」的文件夾。我試着將它移動到src文件夾,而且這也不起作用。

錯誤消息:

org.eclipse.swt.SWTException: i/o error (java.io.FileNotFoundException: sample.gif (No such file or directory)) 

代碼(如果我刪除了這條線,並使用testImage的所有代碼行,插件再次運行):

Image testImage = new Image(null, "sample.gif"); 

任何人有任何想法怎麼可能引起這一點,或者我可以提供什麼信息給某人,讓我指導如何調試?

+0

編寫您已完成的代碼 – 2012-08-05 06:07:29

+0

我基本上沒有編寫任何代碼。這是在eclipse PDT生成的視圖插件上用treeviewer測試的。 – KWJ2104 2012-08-05 06:11:04

+0

你必須嘗試自己,然後只有你可以發佈你試過的問題並尋求解決方案。 – 2012-08-05 06:11:50

回答

1

問題是最有可能與在當前目錄是做。當你使用像「sample.gif」,正常的行爲路徑時,打開的文件是在當前目錄中查找。如果您使用不同的當前目錄運行該應用程序,則應用程序將在不同的位置查找該文件。


我當前目錄的概念

然而在這裏混淆一​​些網頁描述的概念:

應該在哪裏圖片去?

如果你只是在eclipse中運行你的應用程序,那麼你可以把它們放在任何地方......並確保你的應用程序的Eclipse啓動程序配置將當前目錄設置爲一致的地方。 (您當前的問題很可能是由於應用程序啓動器使用Eclipse的父目錄的當前目錄,而這可能取決於您啓動Eclipse時的位置...請參閱上面的鏈接頁面。)

如果您要導出以某種形式構建的應用程序以便用戶可以在Eclipse之外使用它,那麼答案取決於應用程序的性質以及它將如何安裝在用戶的計算機上。 (可能的解決方案是將圖像放入應用程序的JAR文件中,並使用ClassLoader.getResource方法通過類路徑找到它們。)

+0

感謝您的回覆。我從eclipse本身運行程序(因爲我正在構建一個插件)。我曾嘗試添加絕對文件路徑,這確實有效。然而,我對當前的目錄概念感到困惑。照片應該放在哪裏?我把它們放在圖標文件夾中,它與我的eclipse項目的src文件夾處於同一級別。我也把它們直接放在我的代碼實際上是src文件夾中。既沒有工作。 – KWJ2104 2012-08-06 05:28:44