Potentially Switch Build to Maven
---------------------------------
Key: HIVE-2229
URL: https://issues.apache.org/jira/browse/HIVE-2229
Project: Hive
Issue Type: Improvement
Reporter: Ed Kohlwey
Priority: Minor
I want to propose this idea as gently as possible, because I know there's a lot
of passion around build tools these days.
There should at least be some discussion around the merits of Maven vs. Ant/IVY.
If there's a lot of interest in switching Hive to Maven, I would be willing to
volunteer some time to put together a patch.
The reasons to potentially look at Maven for the build system include:
- Simplified build scripts/definitions
- Getting features like publishing test artifacts "automagically"
- Very good IDE integration using M2 eclipse
- IDE integration also supports working on multiple projects at the same time
which may have dependencies on eachother.
- If you absolutely must you can use the maven-antrun-plugin
- Despite the fact that people have trouble thinking in maven at first, it
becomes easy to work with once you know it
- This supports knowledge reuse
Reasons for Ant/Ivy
- There's more flexibility
- The system's imperative style is familiar to all programmers, regardless of
their background in the tool
Reasons not to go Maven
- The build system is hard to learn for those not familiar with Maven due to
its unusual perspective on projects as objects
- There's less flexibility
- If you wind up dropping down to the maven ant plugin a lot everything will be
a big mess
Reasons not to continue Ant/Ivy
- Despite the fact that the programming paradigm is familiar, the structure of
Ant scripts is not very standardized and must be re-learned on pretty much
every project
- Ant/Ivy doesn't emphasize reuse very well
- There's a constant need to continue long-running development cycles to add
desirable features to build scripts which would be simple using other build
systems
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira