Maven supporta, come parte delle proprietà predefinite, qualsiasi proprietà di Java System, quindi puoi utilizzare la seguente proprietà:
java.io.tmpdir
Percorso file temporaneo predefinito
Ad esempio:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.10</version>
<executions>
<execution>
<id>unpack</id>
<phase>package</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<!-- further conf here -->
<outputDirectory>${java.io.tmpdir}/libs</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
Nota il outputDirectory
elemento e il suo valore.
Come ulteriore nota, nota anche che target
La cartella della build Maven è pensata anche per ospitare file temporanei, quindi dovresti anche considerare di usarla per tale scopo.
Funzionerà su entrambi gli ambienti Linux e Windows?
Sì, poiché è una proprietà Java, dovrebbe essere indipendente dal sistema operativo.
usa l'ambiente java tmp dir - java.io.tmpdir
puoi accedervi da Maven tramite ${java.io.tmpdir}
senza doverlo predefinire.
puoi anche personalizzarlo su un'esecuzione specifica eseguendo:
mvn clean install -Djava.io.tmpdir=/tmp/where/ever