<p>Suppose I have the following directory layout in a Maven project:</p>

<pre><code>src/
|-- main
|   |-- bin
|   |   |-- run.cmd
|   |   `-- run.sh
|   |-- etc
|   |   |-- common-spring.xml
|   |   |-- log4j.xml
|   |   `-- xml-spring.xml
|   `-- java
|       `-- com
...
</code></pre>

<p>I would like to build a zip file that, when unzipped, produces something like this:</p>

<pre><code>assembly
|-- bin
|   |-- run.cmd
|   `-- run.sh
|-- etc
|   |-- common-spring.xml
|   |-- log4j.xml
|   `-- xml-spring.xml
`-- lib
    |-- dependency1.jar
    |-- dependency2.jar
...
</code></pre>

<p>where `run.xx' are executable shell scripts that will call my main application and <em>put all dependencies on the classpath</em>.</p>

<p>Is this possible with some of the `official' Maven plugins, e.g. maven-assembly-plugin?</p>

I use the
AppAssembler plugin
to get something similar. Example:
```
```
...
<build>
<plugins>
  <plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>appassembler-maven-plugin</artifactId>
    <configuration>
      <programs>
        <program>
          <mainClass>com.acme.MainClass</mainClass>
          <name>app</name>
        </program>
      </programs>
    </configuration>
  </plugin>
</plugins>
```
```