Hi,
Check out the assembly plugin. It does just that. You have to write an
assembly descriptor xml to customize the release the way you want it.
http://maven.apache.org/plugins/maven-assembly-plugin/howto.html
Here is a very simple assembly descriptor file which bundles all jar files
to the a lib folder and copy a given run script to the root of the
distribution.
<assembly>
<id>bin</id>
<includeBaseDirectory>true</includeBaseDirectory>
<formats>
<format>zip</format>
</formats>
<fileSets>
<fileSet>
<directory>src/main/bin</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>run.sh</include>
</includes>
<fileMode>755</fileMode>
</fileSet>
</fileSets>
<dependencySets>
<dependencySet>
<outputDirectory>lib</outputDirectory>
</dependencySet>
</dependencySets>
</assembly>
Descriptor file can be given in the pom.xml directly like this without
giving it in the command line.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.1</version>
<configuration>
<descriptors>
<descriptor>src/main/assembly/bin.xml</descriptor>
</descriptors>
</configuration>
</plugin>
Hope this helps.
Upul
On Fri, Feb 22, 2008 at 9:26 AM, Chris <[EMAIL PROTECTED]> wrote:
> I've got a standard Java app. I've got a pom that successfully generates
> a jar file, and I got it to generate some javadoc as well.
>
> Now how do I generate a standard release?
>
> In a normal app, the jar goes in a /lib folder along with all the
> dependencies, the javadoc in /doc/api, there's /bin folder with a
> startup script, and a license and readme in the root.
>
> The /target directory doesn't look at all like this. There are things
> there that don't belong in a released app at all, like all the separate
> .class files.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>