You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "Christopher Tubbs (JIRA)" <ji...@apache.org> on 2016/03/25 01:38:25 UTC

[jira] [Created] (ACCUMULO-4172) Leverage Maven Toolchains for cross-compiling

Christopher Tubbs created ACCUMULO-4172:
-------------------------------------------

             Summary: Leverage Maven Toolchains for cross-compiling
                 Key: ACCUMULO-4172
                 URL: https://issues.apache.org/jira/browse/ACCUMULO-4172
             Project: Accumulo
          Issue Type: Task
          Components: build
            Reporter: Christopher Tubbs
            Assignee: Christopher Tubbs


Maven toolchains are a way of declaring prerequisites for a build, and allowing users to create configurations which convey the details of tools which satisfy those prerequisites.

The most common use of toolchains is to specify the JDK version requirements, and many maven plugins will make use of the configured `jdk` toolchain to perform their work.

It is becoming increasingly difficult/annoying to download and configure older JDKs for building different branches of Accumulo with different JDK requirements. The use of toolchains which specify the requirements can make it so switching a branch doesn't require one to perform any extra steps to ensure their JDK matches the build requirements for that branch.

The downside is that users will be responsible for maintaining their own mapping to their local tools which satisfy the jdk requirements in `$HOME/.m2/toolchains.xml`

However, this is a standard way of supporting cross-compilation across java versions, so we should consider implementing it in our maven configuration, so long as we have a requirement to ensure some branches can build and run on older JDKs.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)