As a IDEasy user, I want support that IDEasy should honor maven wrapper in case it is used so that the correct maven is used.
A code repository may use maven-wrapper (mvnw).
From IDEasy we recommend to configure your IDE via IDEasy but there may be use-cases where you might need multiple versions of maven within the same IDE project or you just use your existing IDE project to clone and test some other project using maven wrapper.
So whenever mvnw is present, it should be honored and preferred over the regular maven (mvn).
To conclude the Mvn commandlet should check if mvnw is present and if so, it should be used instead of mvn.
You also need to be aware that mvnw will typically only be present in the project root.
That means we need to traverse up the path (as long as pom.xml files are present) until we found mvnw.
If no mvnw was found, we should continue as normal calling mvn directly.
However, if we have found mvnw, we should call that instead.
We have to test if we then need to check if we can still call our maven command with an absolute path to the mvnw we found in project root inside the potential sub-directory we might be in.
See also takari/maven-wrapper#30
As a IDEasy user, I want support that IDEasy should honor maven wrapper in case it is used so that the correct maven is used.
A code repository may use maven-wrapper (
mvnw).From IDEasy we recommend to configure your IDE via IDEasy but there may be use-cases where you might need multiple versions of maven within the same IDE project or you just use your existing IDE project to clone and test some other project using maven wrapper.
So whenever
mvnwis present, it should be honored and preferred over the regular maven (mvn).To conclude the
Mvncommandlet should check ifmvnwis present and if so, it should be used instead ofmvn.You also need to be aware that
mvnwwill typically only be present in the project root.That means we need to traverse up the path (as long as
pom.xmlfiles are present) until we foundmvnw.If no
mvnwwas found, we should continue as normal callingmvndirectly.However, if we have found
mvnw, we should call that instead.We have to test if we then need to check if we can still call our maven command with an absolute path to the
mvnwwe found in project root inside the potential sub-directory we might be in.See also takari/maven-wrapper#30