2010-08-26 77 views
1

我有以下3個項目工作區: 圖書館 測試 GUI調試黑莓庫

測試只打了圖書館。這是一個類型設置爲「庫」的BB項目 我的所有測試似乎都在工作並觸發代碼。如果我使用JUnit調試測試,我可以介入到我的庫中的函數,查看我的變量和所有正常的調試善良。

我創建了GUI並將庫包含在Required Projects構建路徑中。

我遇到的問題是試圖通過模擬器上的GUI調試庫。當我調試應用程序時,我可以輕鬆找到我的應用程序。現在它是一個簡單的調用庫的按鈕。

例如,像:

FieldChangeListener checkListener = new FieldChangeListener() { public void fieldChanged(Field field, int context) { 
LibraryClass lc = new LibraryClass(); 
Dialog.Alert("Class loaded"); 
}}; 

如果我把一個破發點上LibraryClass LC =新LibraryClass()Eclipse將打破上的按鈕按下。

如果我跨過這種方法沒有任何反應。代碼永遠不會前進到Dialog.Alert()行。

如果我試圖進入構造函數,看看裏面掛了什麼,沒有任何反應。 Eclipse從來沒有進入。

起初我想也許這是一種時間問題,其中的GUI線程需要做些事情,所以我的圖書館電話迷路了。

我試過創建一個實現Runnable的類,以便我可以調用ThreadClass.Run()並讓該類啓動庫調用。但它表現相同。

有沒有例外拋出,它就好像它走下了地球的盡頭。

有沒有人有任何想法或見過類似的東西?它是不是包含庫的模擬器上的配置問題?我錯過了什麼明顯的東西?

回答

1

事實證明,我顯然庫調用拋出一個NoClassDefFoundError

這不是一個例外,只是一個錯誤。顯然,我的應用程序只是在吞嚥錯誤。不幸的是,catch塊上的堆棧跟蹤是空的,所以我不確定這發生了什麼。但至少這是比以前更多的信息。

發現錯誤。 Blackberry正在編譯jdk 1.6,它將字符串連接轉換爲StringBuilder。但是,JRE不支持StringBuilder。我將編譯框架改爲1.4,一切正常。

我把整個過程貼在my blog