[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:15:16 EST 2006


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