MANIFEST.MF generation outside of jar:jar plugin

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

MANIFEST.MF generation outside of jar:jar plugin

Beyer,Nathan
Is there any currently available mechanism to generate a MANIFEST.MF
file outside of the jar:jar goal?

What I'm looking for is a way to generate or manipulate the MANIFEST.MF
such that it contains values from the POM, like version, etc. I can do
this via the 'archive' element in the 'configuration' of the jar plugin,
but this doesn't leave an artifact for use outside of the JAR, such as
being used within the Eclipse IDE's PDE. What would be great is if the
eclipse:eclipse plugin could generate the MANIFEST.MF along with the
other IDE artifacts.

I'm open to any thoughts or suggestions. My major requirement is that I
want to enable use of the Eclipse PDE, but maintain all of the defining
information in the POM.

Thanks.
-Nathan

-----------------------------------------
CONFIDENTIALITY NOTICE This message and any included attachments
are from Cerner Corporation and are intended only for the
addressee. The information contained in this message is
confidential and may constitute inside or non-public information
under international, federal, or state securities laws.
Unauthorized forwarding, printing, copying, distribution, or use of
such information is strictly prohibited and may be unlawful. If you
are not the addressee, please promptly delete this message and
notify the sender of the delivery error by e-mail or you may call
Cerner's corporate offices in Kansas City, Missouri, U.S.A at (+1)
(816)221-1024. -------------------------------------------


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: MANIFEST.MF generation outside of jar:jar plugin

Steven Coco-2
Hi.
> What I'm looking for is a way to generate or manipulate the MANIFEST.MF
> such that it contains values from the POM, like version, etc. I can do
> this via the 'archive' element in the 'configuration' of the jar plugin,
> but this doesn't leave an artifact for use outside of the JAR, such as
> being used within the Eclipse IDE's PDE.
You could try using Maven's resource filtering.  Place a skeleton
manifest in your resource directory.  Place in that any variables you
want to reference: ${project.version} I believe is one.  Then enable
filtering on your resource directory, with the proper character encoding
to be used.  My thought is that Maven might filter your manifest and
deposit it into the target/classes directory.

You might also be able to do this filtering and then make some assembly
that grabs resources which you filter so that only the manifest is
included; and Maven filters and deposits the manifest in some assembly
output directory.

Not the best answers, but maybe you'll find something out.

Good luck.
Steev Coco.

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]

Reply | Threaded
Open this post in threaded view
|

RE: MANIFEST.MF generation outside of jar:jar plugin

Mike Perham
In reply to this post by Beyer,Nathan
war:manifest will generate a standalone MANIFEST.MF in
<warSourceDirectory>/META-INF.  Despite the war association it does not
require a war project; you can use it anywhere (for ejb/mdb projects for
instance).  Example:

                <plugin>
                    <artifactId>maven-war-plugin</artifactId>
                    <configuration>
 
<warSourceDirectory>WebContent</warSourceDirectory>
                        <archive>
                            <manifest>
                                <addClasspath>true</addClasspath>
                                <classpathPrefix>lib/</classpathPrefix>
                            </manifest>
                        </archive>
                    </configuration>
                    <executions>
                        <execution>
                            <phase>package</phase>
                            <goals>
                                <goal>manifest</goal>
                            </goals>
                            <inherited>true</inherited>
                        </execution>
                    </executions>
                </plugin>

This will generate the manifest in WebContent/META-INF every time the
package phase is executed as part of the build.  The goal probably
should move to the jar plugin.

-----Original Message-----
From: Steven Coco [mailto:[hidden email]]
Sent: Friday, June 02, 2006 11:43 AM
To: [hidden email]
Subject: Re: MANIFEST.MF generation outside of jar:jar plugin

Hi.
> What I'm looking for is a way to generate or manipulate the
> MANIFEST.MF such that it contains values from the POM, like version,
> etc. I can do this via the 'archive' element in the 'configuration' of

> the jar plugin, but this doesn't leave an artifact for use outside of
> the JAR, such as being used within the Eclipse IDE's PDE.
You could try using Maven's resource filtering.  Place a skeleton
manifest in your resource directory.  Place in that any variables you
want to reference: ${project.version} I believe is one.  Then enable
filtering on your resource directory, with the proper character encoding
to be used.  My thought is that Maven might filter your manifest and
deposit it into the target/classes directory.

You might also be able to do this filtering and then make some assembly
that grabs resources which you filter so that only the manifest is
included; and Maven filters and deposits the manifest in some assembly
output directory.

Not the best answers, but maybe you'll find something out.

Good luck.
Steev Coco.

---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]


---------------------------------------------------------------------
To unsubscribe, e-mail: [hidden email]
For additional commands, e-mail: [hidden email]