Difference between revisions of "FR3403603 Mavenize"
From ADempiere
This Wiki is read-only for reference purposes to avoid broken links.
(→Overview) |
|||
Line 4: | Line 4: | ||
==Overview== | ==Overview== | ||
− | |||
*Tasks: | *Tasks: | ||
+ | <!-- | ||
**Collect the [[Feature: Cleanup of Ant build scripts|new clean ant files]] written by the "Swiss Guys" from metuX GmbH | **Collect the [[Feature: Cleanup of Ant build scripts|new clean ant files]] written by the "Swiss Guys" from metuX GmbH | ||
**Define modules based on relations in the ant files | **Define modules based on relations in the ant files | ||
Line 12: | Line 12: | ||
**Define project coordinator | **Define project coordinator | ||
**Collect money and/or resources for doing this effort | **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 | **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 | **Prepare training for all developers who don't know about maven building philosophy and how it works in the ADempiere world | ||
Line 31: | Line 32: | ||
*ADempiere Maven-Repo: http://nexus.adempiere.de/nexus | *ADempiere Maven-Repo: http://nexus.adempiere.de/nexus | ||
**[[User:Tobi|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 | **[[User:Tobi|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 | ||
+ | |||
+ | ===How to access the maven repo=== | ||
**Paste this into your local maven settings.xml to access the repository: | **Paste this into your local maven settings.xml to access the repository: | ||
<pre> | <pre> |
Revision as of 23:21, 22 November 2011
Contents
Technical Specifications
Introduction
Overview
- Tasks:
- 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
How to access the maven repo
- 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