Difference between revisions of "FR3403603 Mavenize"
From ADempiere
This Wiki is read-only for reference purposes to avoid broken links.
(→Branch code) |
|||
Line 48: | Line 48: | ||
==Development== | ==Development== | ||
+ | |||
+ | With the exception of posterita, all of adempiere compiles with maven. Next step is to prepare the final assembly phase. | ||
+ | |||
+ | === Directory Layout === | ||
+ | |||
+ | ; common | ||
+ | : contains the common code: base, patches-ecs (extracted from tools with a meaningful name), sqlj | ||
+ | ; desktop client | ||
+ | : the desktop client | ||
+ | ; web-client | ||
+ | : the various web clients and application, with code separated from webapp to ease dependency management of extensions | ||
+ | ; JasperReports | ||
+ | : the jasper report library, ejb bean, and web application | ||
+ | ; lagacy | ||
+ | : contains unused projects: looks and interface (both was empty), serverApps and serverRoot (what remains after the code and webapp has been extracted), tools and JasperReportsTools | ||
+ | ; server | ||
+ | : the server components, and installation | ||
+ | ; assembly | ||
+ | : the ear assemblies, will contain the webstart client when its ready, and the final assemblies | ||
+ | |||
+ | As of now the ear and war assemblies have still to be finalized, because it will depends on how all of adempiere will be assembled. | ||
+ | Webstart client has still to be done, and there are still some directory layout changes that could be done. | ||
=== ToDo List === | === ToDo List === | ||
Line 59: | Line 81: | ||
| Prepare parent pom | | Prepare parent pom | ||
| Freepath | | Freepath | ||
− | | | + | | Done |
|- | |- | ||
| Migrate 'base' to compile with maven | | Migrate 'base' to compile with maven | ||
Line 70: | Line 92: | ||
|- | |- | ||
| Migrate 'client' to compile with maven | | Migrate 'client' to compile with maven | ||
− | | | + | | Freepath |
− | | | + | | Done |
|- | |- | ||
| Migrate 'server' to compile with maven | | Migrate 'server' to compile with maven | ||
− | | | + | | Freepath |
− | | | + | | Done |
|- | |- | ||
| Migrate 'webui' to compile with maven | | Migrate 'webui' to compile with maven | ||
− | | | + | | Freepath |
− | | | + | | Done |
|- | |- | ||
| Migrate 'webStore' to compile with maven | | Migrate 'webStore' to compile with maven | ||
− | | | + | | Freepath |
− | | | + | | Done |
|- | |- | ||
| Migrate 'webCM' to compile with maven | | Migrate 'webCM' to compile with maven | ||
− | | | + | | Freepath |
− | | | + | | Done |
|- | |- | ||
| Install and setup maven mirror | | Install and setup maven mirror | ||
Line 96: | Line 118: | ||
| Tobi/Freepath | | Tobi/Freepath | ||
| Done | | Done | ||
+ | |- | ||
+ | | Refactor directory structure | ||
+ | | Freepath | ||
+ | | In progress | ||
+ | |- | ||
+ | | Migrate Webstart client | ||
+ | | - | ||
+ | | On Hold | ||
+ | |- | ||
+ | | Finalize assemblies | ||
+ | | - | ||
+ | | On Hold | ||
|} | |} | ||
+ | |||
===Developers=== | ===Developers=== |
Revision as of 08:03, 11 October 2011
Contents
Technical Specifications
Introduction
Overview
- Tasks:
- Collect the new clean ant files written by the "Swiss Guys" from metuX GmbH
- Define modules based on relations in the ant files
- Define work packages and who is responsible to which package
- Define project coordinator
- Collect money and/or resources for doing this effort
- Define time schedule together with TT and FT for organize the switch to maven build process
- Prepare training for all developers who don't know about maven building philosophy and how it works in the ADempiere world
References
- Feature Request: #3403603 "Mavenize ADempiere" [1]
- Forum thread about this task: http://sourceforge.net/projects/adempiere/forums/forum/611167/topic/4659270
- Maven home page: http://maven.apache.org/
- Maven IDE for eclipse: http://mevenide.codehaus.org/
- ADempiere Software development procedure: http://www.adempiere.com/Software_Development_Procedure
- Mercurial home page: http://mercurial.selenic.com/
- Mercurial flow extension https://bitbucket.org/yinwm/hgflow/wiki/UserManual
- ADempiere HG repo: http://adempiere.hg.sourceforge.net:8000/hgroot/adempiere/adempiere
- ADempiere Maven-Repo: http://nexus.adempiere.de/nexus
- Tobi 08:28, 7 September 2011 (UTC) : feel free to contact me for a "deployer" account, meaning that you can deploy artifacts to this repo, if they are not found anywhere else
- Paste this into your local maven settings.xml to access the repository:
<repository> <releases> <enabled>true</enabled> <updatePolicy>always</updatePolicy> <checksumPolicy>fail</checksumPolicy> </releases> <snapshots> <enabled>true</enabled> </snapshots> <id>adempiere-public</id> <url>http://nexus.adempiere.de/nexus/content/groups/public/</url> </repository>
Development
With the exception of posterita, all of adempiere compiles with maven. Next step is to prepare the final assembly phase.
Directory Layout
- common
- contains the common code: base, patches-ecs (extracted from tools with a meaningful name), sqlj
- desktop client
- the desktop client
- web-client
- the various web clients and application, with code separated from webapp to ease dependency management of extensions
- JasperReports
- the jasper report library, ejb bean, and web application
- lagacy
- contains unused projects: looks and interface (both was empty), serverApps and serverRoot (what remains after the code and webapp has been extracted), tools and JasperReportsTools
- server
- the server components, and installation
- assembly
- the ear assemblies, will contain the webstart client when its ready, and the final assemblies
As of now the ear and war assemblies have still to be finalized, because it will depends on how all of adempiere will be assembled. Webstart client has still to be done, and there are still some directory layout changes that could be done.
ToDo List
Todo | Working on it | Status |
---|---|---|
Prepare parent pom | Freepath | Done |
Migrate 'base' to compile with maven | Freepath | Done |
Migrate 'tools' to compile with maven | Freepath | Done |
Migrate 'client' to compile with maven | Freepath | Done |
Migrate 'server' to compile with maven | Freepath | Done |
Migrate 'webui' to compile with maven | Freepath | Done |
Migrate 'webStore' to compile with maven | Freepath | Done |
Migrate 'webCM' to compile with maven | Freepath | Done |
Install and setup maven mirror | Tobi | Done |
Upload of missin artifact | Tobi/Freepath | Done |
Refactor directory structure | Freepath | In progress |
Migrate Webstart client | - | On Hold |
Finalize assemblies | - | On Hold |
Developers
Please add you here if you want to help.
Testers
Sponsors
Branch code
Add HG repo URL(s) here
- Branch name is feature/FR3403603_mavenize
Roadmap Document
Use/Extend the table as required
Functionality / Feature | Status | Developer | Priority | Milestone | Release Date | Summary |
---|---|---|---|---|---|---|
New Functionality | ||||||
Functionality 1 | Pending | Victor Perez | High | Version No | -- | Draft |
* Functionality 2 | Pending | Victor Perez | High | Version No | -- | Draft |
Tracker
URLs of related SourceForge trackers / threads.
Migration Script
Install Step
Installation instructions