Hive
  1. Hive
  2. HIVE-2229

Potentially Switch Build to Maven

    Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Minor Minor
    • Resolution: Duplicate
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None

      Description

      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

        Activity

        Ed Kohlwey created issue -
        David Phillips made changes -
        Field Original Value New Value
        Assignee David Phillips [ electrum ]
        Gunther Hagleitner made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Duplicate [ 3 ]

          People

          • Assignee:
            David Phillips
            Reporter:
            Ed Kohlwey
          • Votes:
            6 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development