Are you forking your junit task? If so, try adding ant.jar and optional.jar
to the classpath you pass to <junit>. That's what I had to do.
I suspect this isn't your problem though, since it seems to fail to
acknowlege the <junit> task at all. Go ahead and post the relevant section
of your build.xml so we can see how you've set it up.
K.C.
> -----Original Message-----
> From: Anders Henriksson [mailto:[EMAIL PROTECTED]]
> Sent: Wednesday, April 04, 2001 10:18 AM
> To: [EMAIL PROTECTED]
> Subject: Yet another missing junit task...
>
>
> I have yet another version of the infamous "Could not create task
> of type: junit" problem.
>
> So far the story goes:
> 1. I'm using Sun JDK1.3.0_02, Ant 1.3 [1], and JUnit 3.5 [2],
> running on Debian Linux.
> 2. I have both optional.jar and junit.jar in the class path,
> and have verified this with "ant -debug".
> (They are in $ANT_HOME/lib)
> 3. I have verified that optional.jar contains the JUnit classes.
> 4. I have checked the default.properties in ant.jar, and it
> contains a row for junit. The corresponding class exists in
> optional.jar.
>
> Note in the debug output below that ant doesn't seem to find the
> junit task. (junitreport, however, is found.) Thus, the target
> unit.server does not get any tasks.
>
> Tha last message from [null] makes me wonder if the binary release
> is misconfigured, but the default.properties seems ok.
> Besides, there's
> no bin/bootstrap for me to run.
>
> What is it that I have missed?
>
> Regards,
> Anders
>
>
> [1] Binary release including optional.jar from
> http://jakarta.apache.org/builds/jakarta-ant/release/v1.3/bin/
> jakarta-ant-1.3-bin.tar.gz
> http://jakarta.apache.org/builds/jakarta-ant/release/v1.3/bin/
> jakarta-ant-1.3-optional.jar
> [2] Binary release from
> http://download.sourceforge.net/junit/junit3.5.zip
>
>
> The relevant target definition:
> -----
> <target name="unit.server"> <!-- depends="build.server" -->
> <junit>
> <classpath>
> <pathelement refid="coresrc.class.path.server"/>
> </classpath>
> <formatter type="plain"/>
> <batchtest todir="tests">
> <fileset dir="src">
> <include name="**/Test*.java"/>
> <exclude name="**/client/**"/>
> </fileset>
> </batchtest>
> </junit>
> </target>
>
>
> Build debug output:
> -----
> Ant version 1.3 compiled on March 2 2001
>
> Buildfile: corebuild.xml
> Setting project property: ant.java.version -> 1.3
> Detected Java Version: 1.3
> Detected OS: Linux
> +User task: tar org.apache.tools.ant.taskdefs.Tar
> +User task: fail org.apache.tools.ant.taskdefs.Exit
> +User task: uptodate org.apache.tools.ant.taskdefs.UpToDate
> +User task: java org.apache.tools.ant.taskdefs.Java
> +User task: execon org.apache.tools.ant.taskdefs.ExecuteOn
> +User task: echo org.apache.tools.ant.taskdefs.Echo
> +User task: native2ascii
> org.apache.tools.ant.taskdefs.optional.Native2Ascii
> +User task: jjtree
> org.apache.tools.ant.taskdefs.optional.javacc.JJTree
> +User task: compileTask org.apache.tools.ant.taskdefs.CompileTask
> +User task: chmod org.apache.tools.ant.taskdefs.Chmod
> +User task: javadoc2 org.apache.tools.ant.taskdefs.Javadoc
> +User task: deltree org.apache.tools.ant.taskdefs.Deltree
> +User task: cvs org.apache.tools.ant.taskdefs.Cvs
> +User task: jlink
> org.apache.tools.ant.taskdefs.optional.jlink.JlinkTask
> +User task: tstamp org.apache.tools.ant.taskdefs.Tstamp
> +User task: unjar org.apache.tools.ant.taskdefs.Expand
> +User task: patch org.apache.tools.ant.taskdefs.Patch
> +User task: sound
> org.apache.tools.ant.taskdefs.optional.sound.SoundTask
> +User task: cccheckout
> org.apache.tools.ant.taskdefs.optional.clearcase.CCCheckout
> +User task: mail org.apache.tools.ant.taskdefs.SendEmail
> +User task: gzip org.apache.tools.ant.taskdefs.GZip
> +User task: p4label
> org.apache.tools.ant.taskdefs.optional.perforce.P4Label
> +User task: wlrun
> org.apache.tools.ant.taskdefs.optional.ejb.WLRun
> +User task: copy org.apache.tools.ant.taskdefs.Copy
> +User task: filter org.apache.tools.ant.taskdefs.Filter
> +User task: jar org.apache.tools.ant.taskdefs.Jar
> +User task: unzip org.apache.tools.ant.taskdefs.Expand
> +User task: rename org.apache.tools.ant.taskdefs.Rename
> +User task: propertyfile
> org.apache.tools.ant.taskdefs.optional.PropertyFile
> +User task: copyfile org.apache.tools.ant.taskdefs.Copyfile
> +User task: p4submit
> org.apache.tools.ant.taskdefs.optional.perforce.P4Submit
> +User task: gunzip org.apache.tools.ant.taskdefs.GUnzip
> +User task: antcall org.apache.tools.ant.taskdefs.CallTarget
> +User task: taskdef org.apache.tools.ant.taskdefs.Taskdef
> +User task: mkdir org.apache.tools.ant.taskdefs.Mkdir
> +User task: sql org.apache.tools.ant.taskdefs.SQLExec
> +User task: replace org.apache.tools.ant.taskdefs.Replace
> +User task: ant org.apache.tools.ant.taskdefs.Ant
> +User task: style org.apache.tools.ant.taskdefs.XSLTProcess
> +User task: p4sync
> org.apache.tools.ant.taskdefs.optional.perforce.P4Sync
> +User task: fixcrlf org.apache.tools.ant.taskdefs.FixCRLF
> +User task: vssget
> org.apache.tools.ant.taskdefs.optional.vss.MSVSSGET
> +User task: genkey org.apache.tools.ant.taskdefs.GenerateKey
> +User task: p4edit
> org.apache.tools.ant.taskdefs.optional.perforce.P4Edit
> +User task: zip org.apache.tools.ant.taskdefs.Zip
> +User task: antstructure
> org.apache.tools.ant.taskdefs.AntStructure
> +User task: javah org.apache.tools.ant.taskdefs.optional.Javah
> +User task: javac org.apache.tools.ant.taskdefs.Javac
> +User task: test org.apache.tools.ant.taskdefs.optional.Test
> +User task: cab org.apache.tools.ant.taskdefs.optional.Cab
> +User task: mparse
> org.apache.tools.ant.taskdefs.optional.metamata.MParse
> +User task: ccuncheckout
> org.apache.tools.ant.taskdefs.optional.clearcase.CCUnCheckout
> +User task: ejbjar
> org.apache.tools.ant.taskdefs.optional.ejb.EjbJar
> +User task: available org.apache.tools.ant.taskdefs.Available
> +User task: p4have
> org.apache.tools.ant.taskdefs.optional.perforce.P4Have
> +User task: vsslabel
> org.apache.tools.ant.taskdefs.optional.vss.MSVSSLABEL
> +User task: wljspc
> org.apache.tools.ant.taskdefs.optional.jsp.WLJspc
> +User task: move org.apache.tools.ant.taskdefs.Move
> +User task: junitreport
> org.apache.tools.ant.taskdefs.optional.junit.XMLResultAggregator
> +User task: csc
> org.apache.tools.ant.taskdefs.optional.dotnet.CSharp
> +User task: p4change
> org.apache.tools.ant.taskdefs.optional.perforce.P4Change
> +User task: signjar org.apache.tools.ant.taskdefs.SignJar
> +User task: javacc
> org.apache.tools.ant.taskdefs.optional.javacc.JavaCC
> +User task: cccheckin
> org.apache.tools.ant.taskdefs.optional.clearcase.CCCheckin
> +User task: property org.apache.tools.ant.taskdefs.Property
> +User task: unwar org.apache.tools.ant.taskdefs.Expand
> +User task: touch org.apache.tools.ant.taskdefs.Touch
> +User task: ilasm
> org.apache.tools.ant.taskdefs.optional.dotnet.Ilasm
> +User task: get org.apache.tools.ant.taskdefs.Get
> +User task: stylebook
> org.apache.tools.ant.taskdefs.optional.StyleBook
> +User task: javadoc org.apache.tools.ant.taskdefs.Javadoc
> +User task: netrexxc
> org.apache.tools.ant.taskdefs.optional.NetRexxC
> +User task: antlr org.apache.tools.ant.taskdefs.optional.ANTLR
> +User task: untar org.apache.tools.ant.taskdefs.Untar
> +User task: delete org.apache.tools.ant.taskdefs.Delete
> +User task: ejbc org.apache.tools.ant.taskdefs.optional.ejb.Ejbc
> +User task: ddcreator
> org.apache.tools.ant.taskdefs.optional.ejb.DDCreator
> +User task: copydir org.apache.tools.ant.taskdefs.Copydir
> +User task: war org.apache.tools.ant.taskdefs.War
> +User task: ccupdate
> org.apache.tools.ant.taskdefs.optional.clearcase.CCUpdate
> +User task: depend
> org.apache.tools.ant.taskdefs.optional.depend.Depend
> +User task: renameext
> org.apache.tools.ant.taskdefs.optional.RenameExtensions
> +User task: exec org.apache.tools.ant.taskdefs.ExecTask
> +User task: apply org.apache.tools.ant.taskdefs.Transform
> +User task: wlstop
> org.apache.tools.ant.taskdefs.optional.ejb.WLStop
> +User task: rmic org.apache.tools.ant.taskdefs.Rmic
> +User datatype: fileset org.apache.tools.ant.types.FileSet
> +User datatype: patternset org.apache.tools.ant.types.PatternSet
> +User datatype: path org.apache.tools.ant.types.Path
> +User datatype: mapper org.apache.tools.ant.types.Mapper
> Setting project property: java.runtime.name -> Java(TM) 2 Runtime
> Environment, Standard Edition
> Setting project property: sun.boot.library.path ->
> /usr/local/jdk1.3.0_02/jre/lib/i386
> Setting project property: java.vm.version -> 1.3.0_02
> Setting project property: java.vm.vendor -> Sun Microsystems Inc.
> Setting project property: java.vendor.url -> http://java.sun.com/
> Setting project property: path.separator -> :
> Setting project property: java.vm.name -> Java HotSpot(TM) Client VM
> Setting project property: file.encoding.pkg -> sun.io
> Setting project property: java.vm.specification.name -> Java Virtual
> Machine Specification
> Setting project property: user.dir -> /home/ah/work/main/corebuild
> Setting project property: java.runtime.version -> 1.3.0_02
> Setting project property: java.awt.graphicsenv ->
> sun.awt.X11GraphicsEnvironment
> Setting project property: os.arch -> i386
> Setting project property: java.io.tmpdir -> /tmp
> Setting project property: line.separator ->
>
> Setting project property: java.vm.specification.vendor -> Sun
> Microsystems
> Inc.
> Setting project property: java.awt.fonts ->
> Setting project property: os.name -> Linux
> Setting project property: ant.home -> /usr/local/jakarta-ant-1.3
> Setting project property: java.library.path ->
> /usr/local/jdk1.3.0_02/jre/lib/i386:/usr/local/jdk1.3.0_02/jre
> /lib/i386/native_threads/:/usr/local/jdk1.3.0_02/jre/lib/i386/
> client:/usr/local/jdk1.3.0_02/jre/../lib/i386
> Setting project property: java.specification.name -> Java Platform API
> Specification
> Setting project property: java.class.version -> 47.0
> Setting project property: os.version -> 2.4.2-rfs
> Setting project property: user.home -> /home/ah
> Setting project property: user.timezone ->
> Setting project property: java.awt.printerjob ->
> sun.awt.motif.PSPrinterJob
> Setting project property: file.encoding -> ISO-8859-1
> Setting project property: java.specification.version -> 1.3
> Setting project property: java.class.path ->
> /usr/local/jakarta-ant-1.3/lib/ant.jar:/usr/local/jakarta-ant-1.
> 3/lib/jaxp.jar:/usr/local/jakarta-ant-1.3/lib/junit.jar:/usr/l
> ocal/jakarta-ant-1.3/lib/optional.jar:/usr/loca
> l/jakarta-ant-1.3/lib/parser.jar:/usr/local/jdk1.3.0_02/lib/to
ols.jar:/usr/local/junit3.5/junit.jar
> Setting project property: user.name -> ah
> Setting project property: java.vm.specification.version -> 1.0
> Setting project property: java.home -> /usr/local/jdk1.3.0_02/jre
> Setting project property: user.language -> en
> Setting project property: java.specification.vendor -> Sun
> Microsystems
> Inc.
> Setting project property: java.vm.info -> mixed mode
> Setting project property: java.version -> 1.3.0_02
> Setting project property: java.ext.dirs ->
> /usr/local/jdk1.3.0_02/jre/lib/ext
> Setting project property: sun.boot.class.path ->
> /usr/local/jdk1.3.0_02/jre/lib/rt.jar:/usr/local/jdk1.3.0_02
> /jre/lib/i18n.jar:/usr/local/jdk1.3.0_02/jre/lib/sunrsasign.ja
> r:/usr/local/jdk1.3.0_02/jre/classes
> Setting project property: java.vendor -> Sun Microsystems Inc.
> Setting project property: file.separator -> /
> Setting project property: java.vendor.url.bug ->
> http://java.sun.com/cgi-bin/bugreport.cgi
> Setting project property: sun.io.unicode.encoding -> UnicodeLittle
> Setting project property: sun.cpu.endian -> little
> Setting project property: jikes.class.path -> /usr/local/bin
> Setting project property: user.region -> US
> Setting project property: sun.cpu.isalist ->
> Setting ro project property: ant.file ->
> /home/ah/work/main/corebuild/corebuild.xml
> parsing buildfile /home/ah/work/main/corebuild/corebuild.xml
> with URI =
> file:/home/ah/work/main/corebuild/cor
> ebuild.xml
> Setting ro project property: ant.project.name -> coresrc
> Setting project property: basedir -> /home/ah/work/main
> Project base dir set to: /home/ah/work/main
> +Task: property
> Setting project property: build.compiler -> jikes
> +Task: property
> Setting project property: servlet.path ->
> /usr/local/jakarta-tomcat-3.2.1/lib/servlet.jar
> +Task: property
> Setting project property: junit.path -> /usr/local/junit3.5/junit.jar
> +DataType: path
> +DataType: path
> +Target: clean
> +Task: delete
> +Target: build
> +Target: build.server
> +Task: javac
> +Target: build.client
> +Task: javac
> +Target: unit_test
> +Target: unit.server
> +Target: unit.client
> +Target: perf_test
> +Target: deploy
> +Target: deploy.server
> +Task: jar
> +Task: war
> +Target: deploy.client
> +Task: jar
> +Target: javadoc
> +Task: javadoc
> +Target: all
> +Target: init
> +Task: mkdir
> +Task: mkdir
> +Task: mkdir
> +Task: mkdir
> +Task: mkdir
> +Target: clean_all
> +Task: delete
> +Task: delete
> +Task: delete
> +Task: delete
> +Task: delete
> Build sequence for target `unit.server' is [unit.server]
> Complete build sequence is [unit.server, build.client, deploy.client,
> build.server, deploy.server, deploy, un
> it.client, clean_all, javadoc, clean, unit_test, build, all,
> perf_test,
> init]
>
> unit.server:
> [null] Could not create task of type: junit Common solutions are
> adding the task to defaults.properties and executing bin/bootstrap
>
>
> BUILD FAILED
>
> /home/ah/work/main/corebuild/corebuild.xml:72: Could not
> create task of
> type: junit. Common solutions are to use taskdef to declare
> your task, or,
> if this is an optional task, to put the optional.jar in the
> lib directory
> of your ant installation (ANT_HOME).
>