maven 2 - proyecto - Versión de Maven: ejecutar sin implementar y llamar a un script de shell externo
pasar proyecto de maven a gradle (2)
Estoy usando el plugin de Maven Release. El problema es simple: no quiero hacer un despliegue en el lanzamiento: realizar. Realmente quiero ejecutar un script de shell que hará el despliegue por mí. Así que tengo dos cosas que cumplir:
De alguna manera deshabilitar el objetivo de "despliegue" predeterminado desde el lanzamiento: realizar
De alguna manera make release: perform llama al complemento exec: exec para ejecutar un script de shell
Aquí está mi pom:
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>2.0</version>
<configuration>
<tagBase>svn://saoj-la.dyndns.org/webapp-test/tags</tagBase>
<connectionUrl>scm:svn:svn://saoj-la.dyndns.org/webapp-test/trunk</connectionUrl>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>/bin/sh</executable>
<arguments>
<argument>run.sh</argument>
</arguments>
</configuration>
</plugin>
Estoy usando el plugin de Maven Release. El problema es simple: no quiero hacer un despliegue en el lanzamiento: realizar. Realmente quiero ejecutar un script de shell que hará el despliegue por mí.
Debo estar perdiendo algo porque cuando leo esto, no veo el punto del guión ... Pero digamos que no lo entiendo.
De alguna manera deshabilitar el objetivo de "despliegue" predeterminado desde el lanzamiento: realizar
De acuerdo con la documentación de release:perform
, puede usar el parámetro de goals
opcional para especificar:
Una lista separada por espacios de objetivos para ejecutar en el despliegue. El valor predeterminado es
deploy
odeploy site-deploy
, si el proyecto tiene un elemento<distributionManagement>/<site>
.
Tal vez podría utilizar install
lugar de deploy
.
De alguna manera make release: perform llama al complemento exec: exec para ejecutar un script de shell
Enlazar en la install
en un perfil activado durante el lanzamiento. Aquí hay una manera de hacer esto:
<profile>
<!-- Profile used when the release plugin executes. -->
<id>release</id>
<activation>
<property>
<!-- This property is automatically defined by the Maven release plugin when executing
a release. Thus this profile will be automatically enabled when releasing -->
<name>performRelease</name>
<value>true</value>
</property>
</activation>
<build>
...
</build>
</profile>
Pero honestamente, hay algo extraño con su solicitud. Tal vez dar más detalles ayudaría.
Un poco tarde, pero para referencia:
Para su paso 1, puede deshabilitar el paso de implementación de Maven usando la opción "omitir". Haga clic here para referencia.
En la línea de comandos puedes llamar algo como:
mvn release:perform -Darguments="-Dmaven.deploy.skip=true"