我最近從NetBeans 6.7.1升級到NetBeans 6.9,舊的JUnit測試在導入語句周圍的NetBeans編輯器中顯示「無法找到符號」錯誤。NetBeans 6.9和JUnit 4.8.2軟件包可見性問題
在這些單元測試中,所有東西都正確構建,我仍然可以運行/調試單元測試而不會出現任何問題。但是,編輯器中的自動完成對於無法找到的類完全不起作用。這使得創建新的JUnit測試變得很困難。
我可以從套件中的其他模塊正確導入類。 Java API類也導入沒有問題。這看起來像一個依賴性問題,但我不知道如何解決它。
這裏的假想NetBeans項目結構我上運行:
MyCodeSuite
- MyNetBeansModule1
- - Source Packages
- - - com.company.module1.foo
- - - - DoSomething1
- - - - DoSomethingElse1
- - - - ClassInQuestion
- - Unit Test Packages
- - - com.company.module1.foo
- - - - ClassInQuestionTest
- MyNetBeansModule2
- - Source Packages
- - - com.company.module2.foo
- - - - DoSomething2
- - - - DoSomethingElse2
ClassInQuestionTest.java:
package com.company.module1.foo;
import com.company.module1.foo.DoSomething1; // this is where the editor starts showing errors; these errors are propagated throughout the code anywhere "DoSomething1" shows up
import com.company.module2.foo.DoSomething2; // the editor doesn't complain for this one
// These imports all work correctly
import java.util.List;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import static org.junit.Assert.*;
我重複這個新的單元測試,以及現有的單元測試。無論我從com.company.module1.foo
包中導入什麼課程。編輯器顯示該包內以及同一模塊內的任何類的錯誤。
另外,請注意,我正在使用NetBeans 6.9中的「創建JUnit測試」上下文菜單項來開始新的單元測試。這也是如何創建原始單元測試類(在NB 6.7.1下)。
是的,我也遇到過這個問題。從來沒有能夠找出它,因爲它會看似隨機折磨項目。 – 2010-07-23 18:19:56