2012-01-19 13 views
6

¿Es posible utilizar el complemento de liberación maven con un proyecto de varios módulos, donde algunas de las dependencias entre módulos se especifican usando un parámetro de la matriz pom?Maven Release Plugin con la versión parametrizada

Cuando trato de liberación de llamada: preparo me sale el siguiente error:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.1:prepare (default-cli) on project forest-parent: The version could not be updated: ${some.version} -> [Help 1]

Aquí es mi definición del plugin:

<plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-release-plugin</artifactId> 
      <version>2.1</version> 
      <configuration> 
       <goals>deploy</goals> 
       <tagBase>https://svn.domain.com/svn/project/tags</tagBase> 
       <autoVersionSubmodules>true</autoVersionSubmodules> 
       <tagNameFormat>@{project.version}</tagNameFormat> 
      </configuration> 
     </plugin> 

Gracias de antemano!

+0

Puede responder a su propia pregunta con su solución y marcarla como correcta - de esa manera la pregunta no quedará "sin respuesta" y las personas también tendrán la oportunidad de votar su respuesta :-) – Jan

Respuesta

3

Actualmente, el complemento no es compatible con las versiones parametrizadas del elemento principal (también intenté v2.2.2). La solución fue usar {project.version}.

+1

Curiosamente, las propiedades indirectas no trabajo. En otras palabras, si he definido $ {proyecto.versión} y luego trato de usar $ {alguna.versión} en el , no funciona. Pero usar $ {project.version} directamente en la dependencia sí lo hace. – Ben

+1

@Ben añadiendo "proyecto". el prefijo a las propiedades parece resolver el problema – ichaki5748

+2

@Isaak Esto solo resuelve parcialmente el problema, porque las propiedades en las etiquetas '' se sustituirán por el valor de la versión, haciendo que las propiedades sean inútiles ... – Dormouse

Cuestiones relacionadas