SCM (Software Configuration Management, also called Source Code/Control Management or, succinctly, version control) is an integral part of any healthy project. If your Maven project uses an SCM system (it does, doesn't it?) then here is where you would place that information into the POM.
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> ... <scm> <connection>scm:svn:http://127.0.0.1/websvn/my-project</connection> <developerConnection>scm:svn:http://127.0.0.1/websvn/my-project </developerConnection> <tag>HEAD</tag> <url>http://127.0.0.1/websvn/my-project</url> </scm> ... </project>
For maven release above scm tags are very important, based on those tags it will try to access SVN from maven.
First we need to check "scm" tags are available as per SVN location in pom.xml. I have provided below scm tags as per 1.0.1_Refactor code.
<scm> <connection>scm:svn:http://svn.javavillage.com/svn/branches/ 1.0.1_Refactor/webservices/</connection> <developerConnection>scm:svn:http://svn.javavillage.com/svn/branches/ 1.0.1_Refactor/webservices/</developerConnection> <url>http://svn.javavillage.com/svn/branches/ 1.0.1_Refactor/webservices/</url> </scm>
First we need to update the parent version with release version (not development version) from above in pom.xml for child projects like below.
Mail Service:<parent> <groupId>com.javavillage </groupId> <artifactId>mail-service</artifactId> <version>1.102.01</version> </parent>
Note: don't forget to use parent version after maven release.
Version: 1.102.01(Maven released parent version)
<scm> <connection>scm:svn:http://svn.javavillage.com/svn/branches/1.0.1_Refactor/ webservices/mail</connection> <developerConnection>scm:svn:http://svn.javavillage.com/svn/branches/ 1.0.1_Refactor/webservices/mail</developerConnection> <url>http://svn.javavillage.com/svn/branches/1.0.1_Refactor/ webservices/mail</url> </scm>