You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ant.apache.org by Geoff Capper <ge...@ozemail.com.au> on 2004/07/16 05:10:37 UTC
Java task - jar woes but classname goes
Hi,
I'm not sure if I'm having a problem with my understanding of java or of
ant at this stage (or maybe just understanding in general), and I hope
that someone can point me in the right direction. My problem is as follows:
Background:
Ant: 1.6.1
Java: 1.4.2_04
In my build script I have "compile-app", "run-build" and "run-app"
tasks. I am using external jars from Hibernate, so for each of these
tasks I specify a classpath, for "compile-app" it is simply the main
Hibernate jar, for the other two it is a fileset of everything within my
lib/ directory matching *.jar, which includes the main Hibernate jar.
Problem:
If I run "run-build" everything works fine.
If I run "run-app" with a "classname" attribute, having included the
application jar in the classpath everything works fine.
If I run "run-app" with a "jar" attribute for the application jar
(jarred using ant with a mainclass manifest element) I get a
NoClassDefFoundError for one of the Hibernate classes.
I am running with the debug arg, and the output from ant says the jar is
on the classpath. The classpath isn't changed when I use either
jar/classname, so to my mind it seems I shouldn't have this problem.
I feel sure I have done something stupid, or misunderstood something
somewhere, but I cannot figure out what. My apologies if this is the
same as all the other classpath issues, but I seem to have exhausted all
of the possibilities presented in other emails on that topic, such as
duplicate jars etc.
I have included some of the debug stuff below.
Thanks for any help,
Geoff
Partial output of failed build:
run-app:
Executing 'C:\j2sdk1.4.2_04\jre\bin\java.exe' with arguments:
'-classpath'
'D:\prjAgraria\lib\Agraria.jar;D:\prjAgraria\lib\ext\ant-1.5.3.jar;D:\prjAgraria\lib\ext\ant-optional-1.5.3.jar;D:\prjAgraria\lib\ext\c3p0-0.8.4.5.jar;D:\prjAgraria\lib\ext\cglib-full-2.0.1.jar;D:\prjAgraria\lib\ext\commons-collections-2.1.jar;D:\prjAgraria\lib\ext\commons-dbcp-1.1.jar;D:\prjAgraria\lib\ext\commons-lang-1.0.1.jar;D:\prjAgraria\lib\ext\commons-logging-1.0.3.jar;D:\prjAgraria\lib\ext\commons-pool-1.1.jar;D:\prjAgraria\lib\ext\concurrent-1.3.2.jar;D:\prjAgraria\lib\ext\connector.jar;D:\prjAgraria\lib\ext\dom4j-1.4.jar;D:\prjAgraria\lib\ext\ehcache-0.7.jar;D:\prjAgraria\lib\ext\hibernate2.jar;D:\prjAgraria\lib\ext\hsqldb.jar;D:\prjAgraria\lib\ext\jaas.jar;D:\prjAgraria\lib\ext\jboss-cache.jar;D:\prjAgraria\lib\ext\jboss-common.jar;D:\prjAgraria\lib\ext\jboss-jmx.jar;D:\prjAgraria\lib\ext\jboss-system.jar;D:\prjAgraria\lib\ext\jcs-1.0-dev.jar;D:\prjAgraria\lib\ext\jdbc2_0-stdext.jar;D:\prjAgraria\lib\ext\jgroups-2.2.1.jar;D:\prjAgraria\lib\ext\jta.jar;D:\prjAgraria\lib\ext\junit-3.8.1.jar;D:\prjAgraria\lib\ext\log4j-1.2.8.jar;D:\prjAgraria\lib\ext\odmg-3.0.jar;D:\prjAgraria\lib\ext\oscache-2.0.jar;D:\prjAgraria\lib\ext\proxool-0.8.3.jar;D:\prjAgraria\lib\ext\swarmcache-1.0rc2.jar;D:\prjAgraria\lib\ext\xalan-2.4.0.jar;D:\prjAgraria\lib\ext\xerces-2.4.0.jar;D:\prjAgraria\lib\ext\xml-apis.jar'
'-jar'
'D:\prjAgraria\lib\Agraria.jar'
The ' characters around the executable and arguments are
not part of the command.
java.lang.NoClassDefFoundError: net/sf/hibernate/HibernateException
Exception in thread "main"
Partial output of successful build:
run-app:
Executing 'C:\j2sdk1.4.2_04\jre\bin\java.exe' with arguments:
'-classpath'
'D:\prjAgraria\lib\Agraria.jar;D:\prjAgraria\lib\ext\ant-1.5.3.jar;D:\prjAgraria\lib\ext\ant-optional-1.5.3.jar;D:\prjAgraria\lib\ext\c3p0-0.8.4.5.jar;D:\prjAgraria\lib\ext\cglib-full-2.0.1.jar;D:\prjAgraria\lib\ext\commons-collections-2.1.jar;D:\prjAgraria\lib\ext\commons-dbcp-1.1.jar;D:\prjAgraria\lib\ext\commons-lang-1.0.1.jar;D:\prjAgraria\lib\ext\commons-logging-1.0.3.jar;D:\prjAgraria\lib\ext\commons-pool-1.1.jar;D:\prjAgraria\lib\ext\concurrent-1.3.2.jar;D:\prjAgraria\lib\ext\connector.jar;D:\prjAgraria\lib\ext\dom4j-1.4.jar;D:\prjAgraria\lib\ext\ehcache-0.7.jar;D:\prjAgraria\lib\ext\hibernate2.jar;D:\prjAgraria\lib\ext\hsqldb.jar;D:\prjAgraria\lib\ext\jaas.jar;D:\prjAgraria\lib\ext\jboss-cache.jar;D:\prjAgraria\lib\ext\jboss-common.jar;D:\prjAgraria\lib\ext\jboss-jmx.jar;D:\prjAgraria\lib\ext\jboss-system.jar;D:\prjAgraria\lib\ext\jcs-1.0-dev.jar;D:\prjAgraria\lib\ext\jdbc2_0-stdext.jar;D:\prjAgraria\lib\ext\jgroups-2.2.1.jar;D:\prjAgraria\lib\ext\jta.jar;D:\prjAgraria\lib\ext\junit-3.8.1.jar;D:\prjAgraria\lib\ext\log4j-1.2.8.jar;D:\prjAgraria\lib\ext\odmg-3.0.jar;D:\prjAgraria\lib\ext\oscache-2.0.jar;D:\prjAgraria\lib\ext\proxool-0.8.3.jar;D:\prjAgraria\lib\ext\swarmcache-1.0rc2.jar;D:\prjAgraria\lib\ext\xalan-2.4.0.jar;D:\prjAgraria\lib\ext\xerces-2.4.0.jar;D:\prjAgraria\lib\ext\xml-apis.jar'
'au.capper.agraria.AppRunner'
The ' characters around the executable and arguments are
not part of the command.
Building an AppRunner
<snip>
Ending Main
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org