2010-03-30 145 views
1

我開發了一個簡單的小程序,它從剪貼板導入圖像。當我從NetBeans運行類文件時,一切正常。但是,當我嘗試運行它作爲一個小程序...它給了我很多在Java控制檯中的錯誤,並沒有運行... - 小程序簽署 - 有一個類中的靜態方法,稱爲getImageFromClipboard( )。當applet運行時,它調用這個方法。 - getImageFromClipboard()方法有一個try-catch塊並抑制所有錯誤。它只是返回一個BufferedImage或null。 - 當applet運行時,它會在調用getImageFromClipboard()之前做一些直觀的調整() 現在情況如下:netbeans中的類運行,無法導入圖像並相應地調整接口(在標籤中顯示錯誤) 但當我在瀏覽器中運行它時,java控制檯在getImageFromClipboard()行工作後充滿了錯誤並且沒有任何東西。雖然applet本身會加載並執行它在導入圖像之前應該做的所有事情。 那麼,爲什麼我會收到錯誤,如果我接受證書和所有可能的錯誤都在try-catch塊?這些代碼都不應該拋出任何異常。 任何想法爲什麼發生這種情況?或者你需要查看錯誤信息?java小程序停止運行異常

UPDATE

我已經設法找出自己的問題。我正在使用的類不在jar文件中:(我如何添加它?我在庫軟件包的netbeans中使用「添加jar文件夾」來導入它,但它似乎並沒有被複制到jar。

+0

錯誤告訴了一些關於問題的原因。你知道,一旦原因被理解爲**,解決方案無非是明顯的。所以,將來你真的需要發佈錯誤(異常類型,消息,堆棧跟蹤)。 – BalusC 2010-03-30 11:58:37

回答

0

我設法找出了自己的問題。我正在使用的類不在jar文件中:(我如何添加它?我正在使用「添加jar文件夾「在庫包NetBeans的進口,但它似乎並沒有得到複製到罐子。

您需要在<applet><object>archive參數指定的依賴 標籤。您可以爲逗號分隔的這些JAR文件指定(相對)URL。下面是使用<object><param>標籤的一個示例:

<param name="archive" value="file1.jar,file2.jar,file3.jar"> 

注意,這些文件是相對於當前的請求URL(並且因此需要被放置在相同的文件夾的小程序的JAR文件)。

如果你寧願喜歡所有這些JAR的合併成一個單一的,大的JAR文件,那麼你必須在項目屬性周圍某處看出口的構建路徑依賴。我不做Netbeans,所以我不能詳細地告訴它,對不起。

+0

Balus,謝謝你的回答。基本上,我只需要我自己的類庫中的幾個類文件。所以我寧願將它們導入主jar。我不需要在罐子解決方案或平底鍋的罐子。我想我可以手動將這些單個文件添加到項目中,但將它們自動放置在jar文件中並且只有我真正需要的文件會更簡單。我還沒有發現任何設置中的構建路徑依賴關係。我會嘗試谷歌,但我似乎沒有發現任何有用的東西。如果我找不到任何東西,我只使用html param方法。 – Marius 2010-03-30 13:09:31

+0

這就是我的意思*導出*。至少,它在Eclipse中以這種方式工作。 – BalusC 2010-03-30 13:12:45

+0

好的參數方法的工作原理,但我不想添加一個jar包含所有的類文件。所以我試過以下(我會稍後自動化):我需要導入「ms.common.MSImages」,所以我創建了一個層次結構「ms/common /」,並在「MSImages.java」中添加了項目的src文件夾。在構建時,它會在jar的根目錄下創建「ms/common/MSImages.class」,但是這個applet無法再次找到該類......這不是該類文件應該在哪裏? – Marius 2010-03-30 13:35:52