Helpful tips and tricks for Maven.
- Execute a java app:
mvn exec:java -Dexec.mainClass=[fully qualified name of class]
- Update properties:
mvn -U versions:update-properties
- PKIX path building failed:
mvn -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true ...
- Proxies
http
:-Dhttp.proxyHost=<host> -Dhttp.proxyPort=<port>
https:
-Dhttps.proxyHost=<host> -Dhttps.proxyPort=<port>
- Upload file:
mvn -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true deploy:deploy-file -DgroupId=o[Group ID] -DartifactId=[artifact ID] -Dversion=[Version] -DgeneratePom=true -Dpackaging=jar -DrepositoryId=[Repository I] -Durl=[URL] -Dfile=[Jar Filename] -DupdateReleaseInfo=true
mvn -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true deploy:deploy-file -DgroupId=org.safehaus -DartifactId=jug -Dversion=2.0.0 -DgeneratePom=true -Dpackaging=jar -DrepositoryId=redhat-nexus -Durl=https://foo.bar.com/nexus/myrepository/ -Dfile=jug-2.0.0.jar -DupdateReleaseInfo=true
- certs: create a file
~/.mvn/maven.config
:
-Dmaven.wagon.http.ssl.insecure=true
-Dmaven.wagon.http.ssl.allowall=true
-Dmaven.wagon.http.ssl.ignore.validity.dates=true
- javadocs:
-Dmaven.javadoc.skip
- Checkstyle:
-Dcheckstyle.skip
- Plugin Execution:
<build>
<plugins>
<plugin>
<executions>
<execution>
<configuration>
<skip>${maven.test.skip}</skip>
<build>
<plugins>
<plugin>
<executions>
<execution>
<configuration>
<skip>${skipTests}</skip>
When generating RPMs and including files, use the mapping parameter the sources
element denoting the relative path and file name to include.
To include two files:
<build>
<plugins>
<plugin>
...
<executions>
<execution>
<goals>
<goal>rpm</goal>
</goals>
</execution>
</executions>
<configuration>
...
<mappings>
<mapping>
<sources>
<source>
<location>[relative dir 1]/[file 1]</location>
</source>
</sources>
...
</mapping>
<mapping>
<sources>
<source>
<location>[relative dir 2]/[file 2]</location>
</source>
</sources>
...
</mapping>
</mappings>
</configuration>
</plugin>
</plugins>
</build>