Hello everybody,
please, can anyone answer this questions, or give me some online references 
provinding advice on how to solve a similar problem?
I searched online but found nothing relevant.
Thank you very much.
Best regards.
Javier arias.





________________________________
From: Javier Arias <xavi_ari...@yahoo.com>
To: users@maven.apache.org
Sent: Wed, November 24, 2010 11:30:10 AM
Subject: multi-platform multi-module project/modules structure

Hello all,
I am migrating our ant based projects to maven and I have doubts about the 
correct project structure. We have a complex project strutcture with many 
dependencies between projects that we do not know how to map to maven. I know 
this is a long mail, but i ask for your patience to help me. Thank you in 
advance.

Our project is a java multiplatform (j2me and j2se) and divided by different 
responsibilities:
+ frontend, the frontend of the application.
+ backend access, classes that read/write data to the servers.
+ commons project, classes like utitilties used by both backend access and 
frontend.

Also we sliced our classes by the target platform:
+ crossplatform - classes that work in both j2me and j2se
+ j2me - classes specific to j2me platform
+ j2se - classes specific to j2se platform

So, our current structure is divided into 9 independent projects:

- crosplatform-frontend (classes that are frontend related and are used into 
both j2me and j2se)
- crosplatform-commons
- crosplatform-backend
- j2me-frontend (classes that are frontend related and are j2me specific)
- j2me-commons
- j2me-backend
- j2se-frontend (classes that are frontend related and are j2se specific)
-  j2se-commons
-  j2se-backend

So, as you can imagine, we have lots of dependencies (no circular dependencies) 
between our projects and we have to build processes for the two different 
platforms (also the number of jar files and libraries used are different).

+ j2me build, includes projects: 
                   - crosplatform-frontend, crosplatform-commons, 
crosplatform-backend
                   - j2me-frontend, j2me-commons, j2me-backend

+ j2se build, includes projects: 
                   - crosplatform-frontend, crosplatform-commons, 
crosplatform-backend
                   - j2se-frontend, j2se-commons, j2se-backend

So, here are my questions, I am new to maven, so some options may be just wong:
+ which would be the best project structure? 
       - nine independent projects and two sepparate projects for the building? 
       - three projects dividing by platform?(eg. cross-platform, j2me, j2se) 
each one with three modules? (frontend, commons, backend)
       - only one project with nine modules and two different build targets?
+ what are the best practices for this kind of problem?
+ is it possible to specify the project/module target just to be the compiled 
classes and then pack them as needed from an exteernal module or project?

Thank you very much. Best regards.
Javier Arias.


      

Reply via email to