How svn checkout and checkin maven multimodular project

im having a problem setting my eclipse + maven + m2e + svn settings.

Suppose I checked the project in the svn torso with this structure:

- Project-parent - pom.xml -- ModuleA --- pom.xml (module A) -- ModuleB --- pom.xml (module B) 

In my eclipse installation, I:

 eclipse 3.7.2 64bit Java EE subversive and svn connector for svn 1.6 m2e 1.1 from marketplace m2e-subversive 0.13 (installed from alternative url) 

My problem starts when I want to add a new module to the project. Therefore, I order the project and modules using "Import → Verify Maven projects from SCM". I create it with the standard m2e "Create a new maven module", and after filling in the attributes, my workspace looks like this:

 - Project-parent (in trunk) - pom.xml (in trunk) -- ModuleA (in trunk) --- pom.xml (in trunk) -- ModuleB (in trunk) --- pom.xml (in trunk) -- ModuleC --- pom.xml 

The project is built with "mvn clean install". Therefore, I want to check its ModuleC in svn, but there is no possibility with the functionality of "Share module in svn".

Finally, my questions are:

  • How can you check your new modules into an existing repository? Is it through the eclipse 'Share project' or an external tool like Tortoise?
  • If it is through Eclipse, you automatically have a “connection” between the module project and svn (by connection I mean an annotation in the project about the svn url and the current revision).
  • When you have a “connection” in your case, can you redo something into a ModuleC module and see the “dirty” svn token in Project-parent?
  • How to achieve such a connection manually? The only way to do this is to delete all projects and run "Check Maven Projects from SCM" again and select all projects again.
  • When you create a submodule selector in a different place than the workspace, and then check it on svn, how to return it to the workspace and to m2e from svn?
+4
source share
1 answer

You must also install the main project in eclipse, the parent module of the module. Then use this project to test the new module, as with any set of changes. This project is used only for SVN synchronization. Use module designs for your development.

For your last question, this is a maven restriction so that its sub-module is below the parent project. You cannot (at least not easily) create a module somewhere, check it below the parent, and then check the whole project with the new module.

Try to keep things simple.

Use the parent project if you want to synchronize new modules.

E.I.V. M.

+1
source

All Articles