--- title: Migrate a v1 plugin --- Before starting, make sure to read the [Plugin Development](../plugin-development). To migrate an existing SCM-Manager 1.x Plugin, you have to do the following steps: ### Maven (pom.xml) * create a separate branch for the new version * It might be helpful to start and review the old version of the plugin via `mvn scmp:run` for later reference. * Import .gitignore & .editorconfig from SCMM * You might run the build once and review and fix SCMMv1 deprecation warnings. SCMMv2 gets rids of all deprecated classes. * update the version of the parent artifact (sonia.scm.plugins:scm-plugins) to the minimum version of SCM-Manager 2 you are planning for your plugin * change the packaging type of your plugin to smp * remove the sonia.scm.maven:scm-maven-plugin from the pom * remove servlet-api from the list of dependencies (not always the case) ```diff diff -r a988f4cfb7ab pom.xml --- a/pom.xml Thu Dec 10 20:32:26 2015 +0100 +++ b/pom.xml Tue Oct 30 11:49:35 2018 +0100 @@ -6,13 +6,14 @@ scm-plugins sonia.scm.plugins - 1.15 + 2.0.0-rc7 sonia.scm.plugins scm-mail-plugin 1.6-SNAPSHOT scm-mail-plugin + smp https://bitbucket.org/sdorra/scm-mail-plugin The mail plugin provides an api for sending e-mails. @@ -28,13 +29,6 @@ - - jakarta.servlet - servlet-api - ${servlet.version} - provided - org.codemonkey.simplejavamail simple-java-mail 2.4 @@ -52,18 +46,6 @@ 1.4.7 - - - - - sonia.scm.maven - scm-maven-plugin - 1.22 - - - - ``` ### Plugin Descriptor (src/main/resources/META-INF/scm/plugin.xml) * add the following dtd to the top of the plugin.xml: `` * add an scm-version element with the value 2 to the plugin.xml * remove resources and packages from plugin.xml ```diff diff -r a988f4cfb7ab src/main/resources/META-INF/scm/plugin.xml --- a/src/main/resources/META-INF/scm/plugin.xml Thu Dec 10 20:32:26 2015 +0100 +++ b/src/main/resources/META-INF/scm/plugin.xml Tue Oct 30 11:55:15 2018 +0100 @@ -1,4 +1,5 @@ +