Matthias Pohl created FLINK-32734:
-------------------------------------

             Summary: Add .mvn/maven.config to .gitignore
                 Key: FLINK-32734
                 URL: https://issues.apache.org/jira/browse/FLINK-32734
             Project: Flink
          Issue Type: Improvement
          Components: Build System
    Affects Versions: 1.18.0, 1.19.0
            Reporter: Matthias Pohl


FLINK-28016 allowed Flink to switch to newer (i.e. 3.2.5+) Maven versions. 
Maven 3.3.1 introduced certain local configuration files that are automatically 
injected (e.g. {{.mvn/jvm.options}} and {{.mvn/maven.config}}).

The former one is actively used (and checked into the repository) to define 
certain Java-related requirements. {{.mvn/maven.config}} instead, is not 
utilized right now. It can be used, though, to customize the Maven execution to 
once needs (e.g. always skipping {{flink-runtime-web}} through 
{{-Pskip-webui-build}}).

To be fair, that would be also possible through the 
{{${user.home}/.m2/settings.xml}} through profiles. There are certain 
configuration parameters, though, that are not configurable easily through 
profiles.

Configuring a checkout-specific local repository isn't possible. 
Checkout-specific local repositories are handy, though when working in multiple 
Flink checkouts (e.g. one checkout for reviews and one for contributions). 
Using a single local repository would cause problems when working on a branch 
locally while reviewing other PRs (and checking them out) that touch the same 
files.

A workaround for such a scenario would be to have a checkout-specific 
settings.xml that specifies a checkout-specific local repository.

To support this, I'm suggesting to add {{.mvn/maven.config}} to {{.gitignore}} 
for now. That would allow the developer to enable specific Maven parameters by 
default that match his/her needs.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to