Hi,
I am again wrestling with the <ejbjar> task, this time trying to include the
manifest.mf file contained in the descriptors directory with the ejb jar.
The problem is, Ant is not using the manifest.mf contained in the descriptor
directory and is overwriting it with a (basically) empty one.
The ejbjar task doc lists the following as attributes:
flatdestdir
classpath
genericjarsuffix
basenameterminator
basejarname
naming
destdir
srcdir
descriptordir
though the Ejbjar.java file suggests a hidden feature(?):
/**
* Set the Manifest file to use when jarring.
*
* As of EJB 1.1, manifest files are no longer used to configure the
EJB. However, they
* still have a vital importance if the EJB is intended to be packaged
in an EAR file.
* By adding "Class-Path" settings to a Manifest file, the EJB can look
for classes inside
* the EAR file itself, allowing for easier deployment. This is
outlined in the J2EE
* specification, and all J2EE components are meant to support it.
*/
public void setManifest(File manifest) {
config.manifest = manifest;
}
The comment states exactly why I need to include the existing manifest, viz.
it contains the classpath used by the .ear file. I included the manifest
attribute in my <ejbjar> task, but simply using
<ejbjar srcdir ="${ejbjar.classes.dir}"
destdir ="${deploy.dir}"
descriptordir
="${project.root}/ant_descriptors"
flatdestdir ="true"
genericjarsuffix =".jar"
manifest ="MANIFEST.MF">
results in
[ejbjar] building session_foo.jar with 6 files
BUILD FAILED
b:\d2v1\build.xml:264: Unable to read manifest
changing the manifest filename to "/MANIFEST.MF", "META-INF/MANIFEST.MF", or
"/META-INF/MANIFEST.MF" has no impact on this unfortunate outcome.
System spec: ant 1.4.1, NT 4.0sp6, jdk1.3.1_01
thanks in advance
Todd
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>