My Ant build bazı testleri çalıştıran bir junit görevi içerir. Testlerin çalışması için, geçerli çalışma dizinini (user.dir
) belirten özellik değeri değiştirilmelidir, ancak bunu nasıl başaracağından emin değilim.Ant 'junit' görevinin çalışma dizinini nasıl ayarlayabilirim?
<junit printsummary="withOutAndErr" fork="true"
haltonfailure="yes" showoutput="true"
filtertrace="false" dir="C:/workspace/obp-web">
<jvmarg value="-Duser.dir=C:/workspace/obp-web"/>
<classpath>
<fileset dir="${web.lib.dir}" includes="**/*.jar"/>
<fileset dir="${lib.dir}" includes="**/*.jar"/>
</classpath>
<batchtest fork="no" todir="${web.build.dir}/testresults">
<formatter type="xml"/>
<zipfileset src="${web.build.dir}/test-obp-web.jar">
<include name="**/*Test.class"/>
</zipfileset>
</batchtest>
</junit>
Uyarı:/Çalışma alanı
söz konusu görev şu anda şöyle/obp-web. Ancak Ant çalıştırdığınızda ayrıntılı çıkış açıkken, görüyorum çalışma dir doğru ayarlanmamış belirten aşağıdaki çıkışı:
[junit] gözardı dir nitelik aynı VM
çalışan eğerSistem özellikleri kullanılarak [jUnit] {java.runtime.name = Java (TM) SE Runtime Çevre, sun.boot.library.path c: \ JDK6 \ jre \ bin java.vm .version = 10.0-b23, ant.lib rary.dir = C: \ java \ apache-ant-1.7.0 \ lib, java.vm.vendor = Sun Microsystems, java.vendor.url = http://java.sun.com/, path.separator = ;, java.vm.name = Java Etkin Nokta (TM) istemci VM file.encoding.pkg = sun.io, user.country = CA, sun.java.launcher = SUN_STANDARD, sun.os.patch.level = Service Pack 1, java.vm.specification.name = Java Virtual Machine Şartname, kullanıcı .dir = c: \ workspace \ obp-ear, java.runtime.version = 1.6.0_07-b06, java.awt.graphicsenv = sun.awt.Win32GraphicsEnvironment, java.endorse d.dirs = c: \ jdk6 \ jre \ lib \ onaylı, os.arch = x86, java.io.tmpdir = C: \ Users \ donal \ AppData \ Local \ Temp \, line.separator =
Bunu denedim, ama şans yok. Orijinal öğeyi bilgi ile güncelledim. –
Geçerli çalışma dizinini, user.dir ayarlayarak Java'da değiştiremezsiniz. Sistem özelliğinin değiştirilmesi bir kullanıcı hatası olarak kabul edilir. –
@David Bu doğrudur, ancak bir JVM – Kevin