How to configure maven project to deploy both snapshot and releases to Nexus?
Interna
You can do both.
Add the maven-release-plugin 2.5.3
Run the following:
mvn deploy clean:release release:prepare release:perform
Example of pom.xml configuration
<!-- http://maven.apache.org/pom.html#Distribution_Management -->
<distributionManagement>
<snapshotRepository>
<id>InternalSnapshots</id>
<name>Internal Snapshots</name>
<url>http://192.168.16.232:8081/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
<repository>
<id>InternalReleases</id>
<name>Internal Releases</name>
<url>http://192.168.16.232:8081/nexus/content/repositories/releases/</url>
</repository>
</distributionManagement>
Snippets for .m2/settings.xml for default Nexus installation
<server>
<id>thirdparty</id>
<username>deployment</username>
<password>deployment123</password>
</server>
<server>
<id>InternalReleases</id>
<username>deployment</username>
<password>deployment123</password>
</server>
<server>
<id>InternalSnapshots</id>
<username>deployment</username>
<password>deployment123</password>
</server>
You need to distinguish between the releases and snapshots repository. <distributionManagement>
only allows one <repository>
and one <snapshotRepository>
child.
http://maven.apache.org/pom.html#Distribution_Management