ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alain RAVET" <ara...@cirb.irisnet.be>
Subject launch an application stored in a jar
Date Tue, 23 Jan 2001 17:11:27 GMT
Hi,

I cannot make Ant launch a class that is stored in a jar file.
I tried many variants, but to no avail.

Thanks in advance

Alain RAVET
Brussels, Belgium




The original version where I lauch the class directly (not from a jar) works
fine :


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 - - - - - - run -->
	  <property name="entry.point.class"
			value="cirb.teletest.project.JJJYNet.Test_project_p_JJJYNetDB"    />

	  <target name="run"  depends="compile">
	    <java classname="${entry.point.class}" fork="yes"  failonerror="true"
dir="data">
	        <classpath refid="libraries.path" />
	        <classpath path="${build.dir}" />

	        <arg value="conf.log4j" />
	    </java>
	  </target>



--------------------------------------------------
I use the following manifest file :

   MANIFEST.MF file contents (2 lines):
   ---
      Manifest-Version: 1.0
      Main-Class: cirb.teletest.project.JJJYNet.Test_project_p_JJJYNetDB
   ---


The following attempt does not work :


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 - - - runFromJar -->
	  <target name="runFromJar"  depends="compile">
	    <java classname="${entry.point.class}"  failonerror="true" dir="data">

	        <arg value="-jar ${local.CirbJarfile}" />

	        <classpath refid="libraries.path" />
	        <classpath >
	            <pathelement location="${local.CastorJarfile}" />
	            <pathelement location="${local.CirbJarfile}"   />
	        </classpath >

	        <arg value="conf.log4j" />
	    </java>
	  </target>


==> Error message :

	Démarrage de AntRunner ...
	La cible est 'runFromJar'
	Ant version 1.2 compiled on October 24 2000

	Buildfile: D:\newcvs\p_JJJYNetDB\build.xml
	Detected Java Version: 1.3
	Detected OS: Windows NT
	Project base dir set to: D:\newcvs\p_JJJYNetDB
	Build sequence for target `runFromJar' is [init, compile, runFromJar]
	Complete build sequence is [init, compile, runFromJar, makeCastorjar,
makeCirbjar, make2jars, run, document, FullMonthy]
	     [java] Forking java -classpath
D:\newcvs\p_JJJYNetDB\CastorPatched.jar;D:\newcvs\p_JJJYNetDB\p_JJJYNetDB.ja
r;M:\dev\libs\_allJars\log4j.jar;M:\dev\libs\_allJars\junitx-4.0b.jar;M:\dev
\libs\_allJars\jdbc-se2.0.jar;M:\dev\libs\_allJars\jta1.0.1.jar;M:\dev\libs\
_allJars\jtf-0.1.jar;M:\dev\libs\_allJars\ldapjdk.jar;M:\dev\libs\_allJars\l
dapsp.jar;M:\dev\libs\_allJars\mm.mysql-2.0.3.jar;M:\dev\libs\_allJars\sax2.
jar;M:\dev\libs\_allJars\xerces.jar;M:\dev\libs\_allJars\xslp.jar;M:\dev\lib
s\_allJars\jakarta-regexp-1.1.jar;D:\newcvs\p_JJJYNetDB\src
cirb.teletest.project.JJJYNet.Test_project_p_JJJYNetDB "-jar
p_JJJYNetDB.jar" conf.log4j
	     [java] java.lang.NoClassDefFoundError:
cirb/teletest/project/JJJYNet/Test_project_p_JJJYNetDB

	BUILD FAILED

	D:\newcvs\p_JJJYNetDB\build.xml:98: Java returned: 1


--------------------------------------------------
In the build.xml file, I create the jar
  <target name="makeCirbjar"  depends="compile">
        <delete file="${local.CirbJarfile}" />
        <jar jarfile="${local.CirbJarfile}"
            manifest="./src/META-INF/MANIFEST.MF"
        >
            <!-- exclude the Test classes *.class for the jar -->
            <fileset dir ="${build.dir}"  includes="cirb/"
excludes="**/Test*.class" />
        </jar>
  </target>

When I check the contents of the jar, I can see the manifest is there.
--------------------------------------------------


Mime
View raw message