[Dart] Ant 'test' junit task failure; junit.jar drop-indoesn't work

Blezek, Daniel J (GE, Research) blezek at crd.ge.com
Mon Feb 20 11:41:10 EST 2006


Matt,

  Just to get you up and running, you can download Dart 0.6 from http://na-mic.org/Wiki/index.php/Dart2Summary  This is a little out of date, but forward compatible with Dart 1.0.  I wanted to tag a 0.8 today (0.7 was internal) but we are in the midst of some invasive changes and things are not stable.

  The only requirement for the client is to send properly formatted XML to the Dart Server using XML-RPC (SOAP is _incredibly_ overweight).  The key is "properly formatted"...  At the moment, there are three instantiations of the Dart client, one is for Java only, and is documented in the Dart.pdf in the Cruise Control section, the old "Dart Classic" client written in TCL, and ctest which comes as part of the CMake checkout (http://www.cmake.org).  I'm not completely up on the details of using the ctest tool, but I suspect it will be the most useful for you.  Basically, you need to tell ctest how to build your source ("make -i" generally), and how to run your tests.  Then ctest kicks off, builds, runs tests and submits to the Dart server.  There should be some good pointers in the Dart.pdf.  And I'll add a link to the semi official homepage, which might have helped you out...  my bad.  All of the clients are cross platform (Win, Linux, BSD, Mac OSX, SGI, Sun, etc...).

  I suspect ignorance of Java is bliss...  Many undergrads don't get anything but Java, to their detriment.  Nothing is more satisfying than pointer arithmetic in C++...  Ok, almost nothing... 8)

-dan


-----Original Message-----
From: Matt England [mailto:mengland at mengland.net]
Sent: Monday, February 20, 2006 11:27 AM
To: Blezek, Daniel J (GE, Research)
Cc: Matthew England; dart at public.kitware.com
Subject: RE: [Dart] Ant 'test' junit task failure; junit.jar
drop-indoesn't work


Dan,

At 2/20/2006 10:15 AM, Blezek, Daniel J \(GE, Research\) wrote:
>   Thanks for the vote of confidence...  If you have the Sun JDK, we can 
> just ship you the DartServer.jar file that contains all the dependencies 
> internally, it only needs a 1.4.2 or better JDK (which you have).  This 
> will get you up and running, but is not a satisfying experience (I like 
> to build things myself as well).

I'm happy to take the "pre-built" DartServer.jar for now, and maybe for the 
foreseeable future.  How do we proceed with this?  Where can I get it?  I 
think I may still want to run the self/unit tests on it, nonetheless (and 
your debugging tips will probably come in handy here), if possible.

Additionally, client-side construction will be the next task.  I haven't 
read up on that yet, but I assume that can be found somewhere in 
<http://svn.na-mic.org:8000/svn/Dart/trunk/Dart.pdf>?

I'm still a little fuzzy on what exactly the client is and what it depends 
upon.  I suspect there's some SOAP/XML-RPC based protocol going on from 
client to server, and the client can be constructed however one desires so 
long as it implements said protocol?  Are there multiple clients?  Are they 
all Java based?  Are they pre-packaged?  Which platforms, if so?

I suspect many if not all of these questions are address somewhere...I just 
haven't found that somewhere yet.  Care to point me in a good direction?

Also, I'd be inclined to say Java is a good way to go for 
Dart.  Development in Java (it's conterpart, .NET and related things like 
Mono) goes faster, and as you noted, you can create more features in less time.

It's us poor, ignorant Java users that have problems, but we can get over 
that.  :)  I'll be trying out your ant debugging suggestions soon...unless 
I just bypass it and use your server .jar without running any of the unit 
tests.

-Matt


At 2/20/2006 10:15 AM, Blezek, Daniel J \(GE, Research\) wrote:
>Hi Matt,
>
>   Thanks for the vote of confidence...  If you have the Sun JDK, we can 
> just ship you the DartServer.jar file that contains all the dependencies 
> internally, it only needs a 1.4.2 or better JDK (which you have).  This 
> will get you up and running, but is not a satisfying experience (I like 
> to build things myself as well).
>
>   Sun's JDK (Java Development Kit) comes in several flavors, the one we 
> tend to develop with is J2SE (Java 2 Standard Edition).  [v 1.5.2 in your 
> case, don't ask why 1.5 is called Java2, no one really knows... 
> <rant>Shouldn't you tick the major version number when you call it Java 
> 2?</rant>]  So you have the correct version.
>
>
><snip>
>mengland at csbase1:~/svnwork/Dart/trunk$ ant test
>Error occurred during initialization of VM
>java/lang/NoClassDefFoundError: java/lang/Object
>mengland at csbase1:~/svnwork/Dart/trunk$
>
>I suspect this error reflects my extreme level of Java ignorance and that
>some path/env-variable/tweak will fix this.
></snip>
>
>   You didn't print your environment, but I'm not a bash guy to understand 
> all the commands you did below.  The main traps are JAVA_HOME and 
> CLASSPATH.  You set JAVA_HOME correctly, and CLASSPATH should be unset 
> for ant to do it's thing.  So (in tclsh):
>
>{practical:CalibrationPhantom}1096:setenv JAVA_HOME /usr/java/jdk1.5.0_01/
>{practical:CalibrationPhantom}1097:unsetenv CLASSPATH
>{practical:CalibrationPhantom}1098:ant -v
>Apache Ant version 1.6.2 compiled on July 16 2004
>Buildfile: build.xml does not exist!
>Build failed
>
>The "Build failed" is ok, I wasn't in the Dart directory.
>
>Try this:
>
>{practical:CalibrationPhantom}1102:ant --execdebug
>exec "/usr/java/jdk1.5.0_01//bin/java" -classpath 
>"/projects/mion/Source/apache-ant-1.6.2/lib/ant-launcher.jar" 
>-Dant.home="/projects/mion/Source/apache-ant-1.6.2" 
>-Dant.library.dir="/projects/mion/Source/apache-ant-1.6.2/lib" 
>org.apache.tools.ant.launch.Launcher -lib "/home/blezek"
>Buildfile: build.xml does not exist!
>Build failed
>
>The --execdebug will tell you exactly what ant is trying to do.  Then you 
>can give it a go manually.  I set CLASSPATH to some bogus directory but it 
>didn't have much effect, so disregard the previous comments about it.
>
>In regards to your <rant>.  I couldn't agree more.  The Sun guys seem to 
>get it on so many levels in other areas, but Java is really the black 
>sheep.  We spend an enormous amount of time debugging problems exactly 
>like you are having.  The approach Dart has taken is to make downloading 
>and compiling as simple as possible by distributing all the external 
>libaries we depend on and putting all the CLASSPATH stuff in the build.xml 
>file.  That being said, there are still problems with Java (and/or our 
>understanding of Java.  Jim and I are long time C/C++ guys...)  Java is 
>great, because there are so many wonderful Open Source libraries to do 
>almost anything you wish to, but why is it so hard to get up and 
>running?  Donno...  We have been able to add astonishing capabilities to 
>Dart because we use Java, but it does cost in terms of pain...
>
>Let me know what works or doesn't work for you,
>-dan
>
>
>
>
>
>
>-----Original Message-----
>From: dart-bounces+blezek=crd.ge.com at public.kitware.com
>[mailto:dart-bounces+blezek=crd.ge.com at public.kitware.com]On Behalf Of
>Matt England
>Sent: Monday, February 20, 2006 10:45 AM
>To: Blezek, Daniel J (GE, Research)
>Cc: Matthew England; dart at public.kitware.com
>Subject: RE: [Dart] Ant 'test' junit task failure; junit.jar
>drop-indoesn't work
>
>
>Dan,
>
>Thanks for the email notes/replies.  I like impression I'm getting that
>someone like yourself is championing the support for this product.
>
>At 2/20/2006 08:30 AM, Blezek, Daniel J (GE, Research) wrote:
> >I think this line:
> >Unable to locate tools.jar. Expected to find it in
> >/usr/lib/sablevm/lib/tools.jar
> >is causing your problems.  I'm not entirely sure what's in tools.jar, but
> >I think it helps with dynamically loading the junit task into Ant.  Do you
> >have a regular JDK (i.e. Sun's) on your machine?  You should set JAVA_HOME
> >to the path to this, and try the 'ant test' again.
>
>Sun's JDK/J2SE (are these the same things? I assume JDK = Java SDK = Java 2
>Standard Edition? there is no "guidebook" on sun.com that I can find)
>doesn't even get off the ground (which is namely why I'm using gcj/jikes on
>Debian, simply out of necessity).  Here's an excerpt from a large session
>description below:
>
>mengland at csbase1:~/svnwork/Dart/trunk$ ant test
>Error occurred during initialization of VM
>java/lang/NoClassDefFoundError: java/lang/Object
>mengland at csbase1:~/svnwork/Dart/trunk$
>
>I suspect this error reflects my extreme level of Java ignorance and that
>some path/env-variable/tweak will fix this.
>
>For what it's worth, the jdk path reference below was created by
>downloading the Linux rpm from:
>
>http://javashoplm.sun.com/ECom/docs/Welcome.jsp?StoreId=22&PartDetailId=jdk-1.5.0_06-oth-JPR&SiteId=JSC&TransactionId=noreg
>
>...is found at:
>
>http://java.sun.com/j2se/1.5.0/download.jsp
>
>Is this the right stuff?
>
><rant>
>I've been developing and using cross-platform (Windows, Unix, Linux, VMS,
>BSD) software (that includes low-level storage-interface driver support) in
>C/C++ and a numerous interpreted languages (php, perl, tcl/tk, bash, ksh,
>etc etc) on and off for about 12 years.  I've *never* had as many headaches
>building and porting applications as I do with Java, despite Java being
>trumpted as the Holy Grail of easing porting problems.
>
>My golden rule in software development: eliminate dependencies (and this
>has many contexts beyond the current one).  Java-based systems tend to
>create dependencies all over the place (VMs, classpaths, jars, classes, etc
>etc) that break a lot.  I really don't blame this on the Java developers; I
>blame this on the Java system.  Alternatively, I can statically link and or
>embed dynamically-linked libs in any non-Java app I desire.  And I do in
>software that my projects build.
>
>I'm still waiting for the day when the Java community gets this.
></rant>
>
>Thanks for allowing me get this off my chest. :)
>
>Now on to a more-productive conversation...
>
>-Matt
>
>
>mengland at csbase1:~/svnwork/Dart/trunk$ ls -la /usr/java/jdk1.5.0_06/
>total 17292
>drwxr-xr-x  9 root root     4096 2006-02-19 16:14 .
>drwxr-xr-x  4 root root     4096 2006-02-19 16:14 ..
>drwxr-xr-x  2 root root     4096 2006-02-19 16:14 bin
>-r--r--r--  1 root root     2487 2005-11-10 16:38 COPYRIGHT
>drwxr-xr-x  8 root root     4096 2006-02-19 16:14 demo
>drwxr-xr-x  3 root root     4096 2006-02-19 16:14 include
>drwxr-xr-x  6 root root     4096 2006-02-19 16:14 jre
>drwxr-xr-x  2 root root     4096 2006-02-19 16:14 lib
>-r--r--r--  1 root root    15584 2005-11-10 16:38 LICENSE
>drwxr-xr-x  4 root root     4096 2006-02-19 16:14 man
>-r--r--r--  1 root root    20415 2005-11-10 16:38 README.html
>drwxr-xr-x  4 root root     4096 2006-02-19 16:14 sample
>-rw-r--r--  1 root root 17527615 2005-11-10 16:38 src.zip
>-r--r--r--  1 root root    68419 2005-11-10 16:38 THIRDPARTYLICENSEREADME.txt
>mengland at csbase1:~/svnwork/Dart/trunk$ export JAVA_HOME=$!
>mengland at csbase1:~/svnwork/Dart/trunk$ !$
>JAVA_HOME=$!
>mengland at csbase1:~/svnwork/Dart/trunk$ clear
>mengland at csbase1:~/svnwork/Dart/trunk$ set -o vi
>mengland at csbase1:~/svnwork/Dart/trunk$ clear
>mengland at csbase1:~/svnwork/Dart/trunk$ ls -la /usr/java/jdk1.5.0_06/
>total 17292
>drwxr-xr-x  9 root root     4096 2006-02-19 16:14 .
>drwxr-xr-x  4 root root     4096 2006-02-19 16:14 ..
>drwxr-xr-x  2 root root     4096 2006-02-19 16:14 bin
>-r--r--r--  1 root root     2487 2005-11-10 16:38 COPYRIGHT
>drwxr-xr-x  8 root root     4096 2006-02-19 16:14 demo
>drwxr-xr-x  3 root root     4096 2006-02-19 16:14 include
>drwxr-xr-x  6 root root     4096 2006-02-19 16:14 jre
>drwxr-xr-x  2 root root     4096 2006-02-19 16:14 lib
>-r--r--r--  1 root root    15584 2005-11-10 16:38 LICENSE
>drwxr-xr-x  4 root root     4096 2006-02-19 16:14 man
>-r--r--r--  1 root root    20415 2005-11-10 16:38 README.html
>drwxr-xr-x  4 root root     4096 2006-02-19 16:14 sample
>-rw-r--r--  1 root root 17527615 2005-11-10 16:38 src.zip
>-r--r--r--  1 root root    68419 2005-11-10 16:38 THIRDPARTYLICENSEREADME.txt
>mengland at csbase1:~/svnwork/Dart/trunk$ export JAVA_HOME=!$
>export JAVA_HOME=/usr/java/jdk1.5.0_06/
>mengland at csbase1:~/svnwork/Dart/trunk$ pwd
>/home/mengland/svnwork/Dart/trunk
>mengland at csbase1:~/svnwork/Dart/trunk$ svnversion .
>267M
>mengland at csbase1:~/svnwork/Dart/trunk$ svn info
>Path: .
>URL: http://svn.na-mic.org:8000/svn/Dart/trunk
>Repository UUID: b2c14c61-d7ef-0310-8715-841e9ab387fe
>Revision: 267
>Node Kind: directory
>Schedule: normal
>Last Changed Author: millerjv
>Last Changed Rev: 267
>Last Changed Date: 2006-02-15 16:46:01 -0500 (Wed, 15 Feb 2006)
>Properties Last Updated: 2006-02-19 14:57:19 -0500 (Sun, 19 Feb 2006)
>
>mengland at csbase1:~/svnwork/Dart/trunk$ svn status
>?      TestLog
>?      DartServer.jar
>?      1
>?      2
>?      Class
>?      Source/qed/server/wrap
>M      Source/dart/server/messenger/SMTPMessenger.java
>mengland at csbase1:~/svnwork/Dart/trunk$ ant test
>Error occurred during initialization of VM
>java/lang/NoClassDefFoundError: java/lang/Object
>mengland at csbase1:~/svnwork/Dart/trunk$
>
>_______________________________________________
>Dart mailing list
>Dart at public.kitware.com
>http://public.kitware.com/mailman/listinfo/dart



More information about the Dart mailing list