gnodet commented on issue #392:
URL: https://github.com/apache/maven-mvnd/issues/392#issuecomment-1374912233

   
   > I don't want to have mvnd automatically downloaded by wrapper: I want mvnd 
client/server architecture to be able to run with any Maven version (with 
eventually some compatibility limits)
   
   Most of the performance improvements come from the ability to customise the 
maven and this requires tight integration for now.  At beginning, mvnd had to 
rewrite a bunch of maven classes.  The number slowly goes down, but it will be 
difficult to have `mvnd` be independent on maven until we have such things. The 
most important point remaining is the  
[DaemonMavenCli](https://github.com/apache/maven-mvnd/blob/master/daemon/src/main/java/org/apache/maven/cli/DaemonMavenCli.java)
 which is a pain to maintain.
   
   What could be done, is to have different versions of 
[`mvnd-daemon`](https://github.com/apache/maven-mvnd/tree/master/daemon) module 
for each specific version of maven and use the correct one depending on the 
maven version used. 
   For example, we have 
[these](https://github.com/apache/maven-mvnd/commit/92cbc7d6cf8af1822fa1912a3f4f737dd698685e)
 
[changes](https://github.com/apache/maven-mvnd/commit/417ed7ec8b71b32837c4f7a907ee540a3adea5f3)
 to go from 3.x to 4.x.  Not sure how far we can go in this direction, but this 
would be a first step at supporting multiple versions of maven.
   From a distribution point of view, I'm not sure if we can actually avoid 
embedding maven in the mvnd distribution.
   Another point would be how to select the maven version to run ? Would we 
need something like what the maven-wrapper does ? i.e. specify the maven 
version for a given project ?
   
   I was planning at releasing a `mvnd` 0.9.x to support maven 3.8.7.
   
   At the end, I'm not sure if it's easier to maintain multiple branches of 
mvnd focused on different version of maven, or to try to support them all in a 
single branch...  At this point, I'm leaning toward the first solution because 
it's much less time consuming I think.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to