2012-09-05 108 views
1

我試圖使用Ant編譯JUnit的java文件,但我正在逐漸,螞蟻junit的參考

package org.junit does not exist 
[javac] import static org.junit.Assert.*; 
... 

而且,這是我的build.xml的一部分,

<javac debug="true" includeantruntime="false" debuglevel="${debuglevel}" destdir="bin" source="${source}" target="${target}"> 
     <src path="test"/> 
     <classpath refid="MyProgram.classpath"/> 
    </javac> 

    <path id="MyProgram.classpath"> 
    ... 
    <pathelement location="lib/junit.jar"/> 
    ... 

是這有什麼問題嗎?

謝謝。

+2

你肯定'junit.jar'是真的位於'lib'目錄? – AlexR

+0

是的,jar文件在lib文件夾下。 – Tony

+1

你的junit.jar可能是junit3嗎? 'org.junit.Assert'包是junit4,我看到junit3把它作爲'junit.framework.Assert'包。 –

回答

0

我注意到在上面的摘錄中,<path>元素看起來與<javac>元素在同一個目標中。 <path>元素是否可能放錯位置? (它需要在同一目標或外部目標元素的javac的前面。)

+0

我複製錯了,路徑是在原始build.xml中的javac之上。謝謝。 – Tony

+1

@Tony:看到我上面的其他評論 - 也許junit.jar是錯誤的版本。打開它,並確保它包含jar文件中的org.junit.Assert.class。 –

0

相反位置的pathelement使用路徑是這樣的:

<path id="MyProgram.classpath"> 
    ... 
    <pathelement path="lib/junit.jar"/> 
</path> 
+0

實際上,我測試了他的build.xml,並且'location'屬性工作正常。所以我認爲這與此無關。 –