2011-03-03 21 views
26

Obtengo Error reading assemblies: No assembly descriptors found al construir mi proyecto. Estoy tratando de establecer los permisos para mis archivos .sh y excluir un desagradable archivo .jar que hace que se cuelgue mi aplicación ... No creo que el problema sea sobre eso ...Error al leer ensamblajes: No se encontraron descriptores de ensamblaje

Mi plugin maven-assembly es agregado como esto en mi archivo pom.xml:

<plugin> 
     <artifactId>maven-assembly-plugin</artifactId> 
     <version>2.2.1</version> 
     <executions> 
     <execution> 
      <id>make-assembly</id> 
      <phase>package</phase> 
      <goals> 
      <goal>single</goal> 
      </goals> 
      <configuration> 
      <descriptors> 
      <descriptor>src/main/assembly/src.xml</descriptor> 
      </descriptors> 
      </configuration> 
     </execution> 
     </executions> 
</plugin> 

mi descriptor de ensamblaje se ve así:

<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd"> 
    <id>my-assembly-descriptor</id> 
    <formats> 
    <format>jar</format> 
    <format>war</format> 
    </formats> 
    <fileSets> 
     <fileSet> 
      <directory>${project.build.directory}</directory> 
      <outputDirectory>${project.build.directory}</outputDirectory> 
      <includes> 
       <include>*.sh</include> 
      </includes> 
      <fileMode>0755</fileMode> 
     </fileSet> 
    </fileSets> 
    <dependencySets> 
    <dependencySet> 
     <excludes> 
     <exclude>spring-2.5.4.jar</exclude> 
     </excludes> 
    </dependencySet> 
    </dependencySets> 
</assembly> 

La estructura en mi proyecto es:

Interface - src - main - assembly - src.xml 

      - pom.xml 

Al tratar de hacer Ejecutar como -> Depuración como - y> a continuación, en la portería poniendo assembly:single

me sale el mismo error. Intenté en la consola, con assembly:assembly, y no obtuve nada. Incluso traté de poner una ruta incorrecta a mi descriptor de ensamblado, pero el error no cambió. Al poner ${basedir}/ antes de la ruta al descriptor de mi ensamblaje, obtengo el mismo.

tengo Ubuntu 10.10 Maverick Meerkat, y estoy trabajando con Eclipse EE, ...

Gracias!

Respuesta

4

Parece que ha configurado el complemento de ensamblaje en <build>...<pluginManagement>...<plugins>. Debería funcionar si configura el complemento en <build>...<plugins>.

<build> 
    <plugins> 
    <plugin> 
     <artifactId>maven-assembly-plugin</artifactId> 
     <version>2.2.1</version> 
     <executions> 
     <execution> 
      <id>make-assembly</id> 
      <phase>package</phase> 
      <goals> 
      <goal>single</goal> 
      </goals> 
      <configuration> 
      <descriptors> 
       <descriptor>src/main/assembly/src.xml</descriptor> 
      </descriptors> 
      </configuration> 
     </execution> 
     </executions> 
    </plugin> 
    </plugins> 
</build> 
18

He estado usando la versión 2.3 de maven-assembly-plugin, pero creo que el problema es el mismo: si la configuración de montaje se declara dentro de una ejecución, que funciona desde mvn package, pero que no funciona desde mvn assembly:assembly.

La solución que he encontrado es declarar la configuración en la configuración de nivel superior de la plugin, y mantener la ejecución lo más pequeño posible:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-assembly-plugin</artifactId> 
    <version>2.3</version> 
    <configuration> 
     <descriptors> 
      <descriptor>src/main/assembly/standalone.xml</descriptor> 
     </descriptors> 
     <finalName>standalone</finalName> 
    </configuration> 
    <executions> 
     <execution> 
      <id>standalone</id> 
      <phase>package</phase> 
      <goals> 
       <goal>single</goal> 
      </goals> 
     </execution> 
    </executions> 
</plugin> 
Cuestiones relacionadas