2010-08-17 11 views
8

¿Es posible establecer la variable de entorno con maven (OS: Linux)?Configuración de la variable de entorno con maven 2.x

Ya tengo propiedades definidas por el usuario (en el POM y en profiles.xml) .... mi problema es, ¿cómo debe ejecutarse después de Maven

export GGA_FRE=/path 

Así será posible, que todos los desarrolladores puede establecer su propio camino para el GGA_FRE.

+0

Maven tiene algunas variables env y java incorporadas. ¿Cuál (como un ejemplo) quieres establecer? – JoseK

+0

Quiero configurar mi propio entorno var ... por ejemplo, el GGA_FRE. – cupakob

+0

¿Por qué es necesario configurarlos? Úsalos desde fuera de Maven? – khmarbaise

Respuesta

4

Esta respuesta no es correcta, al menos no del todo (ver comentarios).
Lamentablemente no puedo eliminarlo ya que ha sido aceptado. Tu kilometraje puede variar.


Utilice exec:exec mojo.

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>exec-maven-plugin</artifactId> 
    <version>1.1</version> 
    <executions> 
     <execution> 
     <id>exportVar</id> 
     <phase>initialize</phase> 
     <goals> 
      <goal>exec</goal> 
     </goals> 
     </execution> 
    </executions> 
    <configuration> 
     <executable>export</executable> 
     <arguments> 
     <argument>GGA_FRE=${my.path}</argument> 
     </arguments> 
    </configuration> 
    </plugin> 

ahora lo llaman como esto mvn install -Dmy.path=/var/users/groucho

+0

¿Alguien puede confirmar que esto funciona? Lo he intentado y no funciona para mí. Creo que exec: exec ejecutaría el comando en un intérprete engendrado, lo que reduciría el entorno modificado cuando salga inmediatamente después. – Anonymoose

+0

@Anonymoose que podría ser correcto, probablemente deba hacer una pregunta de seguimiento en http://superuser.com para determinar el comando exacto necesario (si lo hay). No soy un gurú de concha. –

+0

@Anonymoose, esto tampoco me funciona. – Gilbeg

0

No creo que hay una manera de Java para establecer la variable de entorno del comando de exportación manera lo hace (por lo que está fuera disponible de Java). (consulte, por ejemplo, esta pregunta: How do I set environment variables from Java?)

Sin embargo, puede hackear su camino: por ejemplo, use el complemento maven-exec para ejecutar un script de shell y luego configure la variable en el script. Puede pasar un parámetro a su secuencia de comandos para especificar el valor de la variable. (tenga en cuenta que no lo he probado)

Cuestiones relacionadas