2011-10-07 77 views
0

我正在開發一個使用範圍並行項目的Java應用程序。在其中一個項目中,我有一個類實現了一個接口。但我遇到的一個問題是,這個類似乎以兩種方式表示,既作爲構建路徑中的類,也作爲構建路徑之外的類。編譯器在構建路徑之外運行類而不是構建路徑中的類

在Eclipse中,我可以將類打開爲帶有「路徑版本」的選項卡,其中一個帶有「填充J」和一個帶有「空心J」。這對我來說不是問題,我不關心這個問題,但是編譯器似乎總是將類運行爲「不是正在構建的路徑的一部分」--version。當我調試調試器時,總是在構建路徑之外的類中結束。這會導致錯誤和應用程序崩潰。

我不知道該如何解決它。在我的理解中,這甚至不應該是一個問題,編譯器應該總是在構建路徑中運行類,對.. ..?

有沒有人有任何想法可能是什麼問題?

這裏的堆棧跟蹤,但我不認爲這將是多大用處... = \

Caused by: java.lang.NullPointerException: null 
    at com.smarttrust.m2m.core.services.inventory.InventoryServiceImpl.getNetworks(InventoryServiceImpl.java:244) ~[m2m-core-services-1.0.0-A-SNAPSHOT.jar:1.0.0-A-SNAPSHOT] 
    at com.smarttrust.m2m.ui.admin.inventory.InventoryAssignSubscription.populateDropdown(InventoryAssignSubscription.java:211) ~[classes/:na] 
    at com.smarttrust.m2m.ui.admin.inventory.InventoryAssignSubscription.init(InventoryAssignSubscription.java:115) ~[classes/:na] 
    at com.smarttrust.m2m.ui.admin.inventory.InventorySimCardTable$ActionColumnGenerator$1.buttonClick(InventorySimCardTable.java:352) ~[classes/:na] 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.6.0_26] 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) ~[na:1.6.0_26] 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) ~[na:1.6.0_26] 
    at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_26] 
    at com.vaadin.event.ListenerMethod.receiveEvent(ListenerMethod.java:490) ~[vaadin-6.6.3.jar:6.6.3] 
    ... 23 common frames omitted 
+1

如果您使用Eclipse Maven插件,則會發生此類問題(m2e/m2eclipse)和項目POM取決於包含有問題的類的一個版本,這個版本與你在Eclipse中使用的版本不同 –

+0

@NicolaMusatti你可能是對的......我的問題是我的主要任務該項目正在開發應用程序的GUI和非常高層次的前端部分。當談到在項目的核心階段發生這樣的問題時,我很茫然......我可能不得不等到下個星期才試圖抓住我的項目組中的其他人可以幫助我.. = \感謝尼古拉。 =) – AndroidHustle

回答

0

轉到項目構建路徑,在Order and Export標籤。 您會看到與您的項目相關的所有源代碼,您應該向上移動正確的類(如您所說的正在構建路徑的類)