[ https://issues.apache.org/jira/browse/MNG-8598?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17938658#comment-17938658 ]
Marc Guillemot commented on MNG-8598: ------------------------------------- [~gnodet] what do you propose for a linux versus a windows version of {{jvm.config?}} > Support for evaluated jvm.config files to improve lombok+ecj support > -------------------------------------------------------------------- > > Key: MNG-8598 > URL: https://issues.apache.org/jira/browse/MNG-8598 > Project: Maven > Issue Type: Improvement > Components: Command Line > Affects Versions: 3.9.6 > Reporter: Marc Guillemot > Priority: Major > Fix For: 4.x / Backlog > > > We use lombok together with the ecj compiler in a large project. For that, we > use {{lombok.jar}} as java agent for maven (corresponds to the official > lombok documentation: > [https://projectlombok.org/setup/ecj)|https://projectlombok.org/setup/ecj),]. > At the root level of the project, this is quite easy > {{.mvn/jvm.config:}} > {code:java} > -javaagent:lombok.jar=ECJ > {code} > We want to be able to call mvn in any module of the project, which means that > each submodule needs to have its own {{.mvn/jvm.config}} with the relative > path to the {{lombok.jar}} file, otherwise maven can't start because the > agent is not found: > - at depth 1: {{-javaagent:../lombok.jar=ECJ}} > - at depth 2: {{-javaagent:../../lombok.jar=ECJ}} > - at depth 3: {{-javaagent:../../../lombok.jar=ECJ}} > - ... > This is naturally very annoying and error prone (new modules need to have > their {{.mvn/jvm.config}} and relative paths have to be adapted when moving > modules). > > It seems to me that maven doesn't provide currently any better way to achieve > that (I hope, I'm wrong) but that this could be achieved improving the > {{{}mvn.bat{}}}/{{{}mvn{}}} scripts with: > * interpolation of contained variables ({{{}MAVEN_PROJECTBASEDIR{}}} would > be the interesting one) > * support for two different {{jvm.config}} files allowing bat/sh specific > references for variables. > In our case it would be a "sh.jvm.config" with > {{-javaagent:$MAVEN_PROJECTBASEDIR/lombok.jar=ECJ}} and a "bat.jvm.config" > with {{{}-javaagent:%MAVEN_PROJECTBASEDIR%\lombok.jar=ECJ{}}}. -- This message was sent by Atlassian Jira (v8.20.10#820010)