Bug 2164351

Summary: maven:3.6 does not respect JAVA_HOME set by user
Product: Red Hat Enterprise Linux 8 Reporter: Marián Konček <mkoncek>
Component: mavenAssignee: Marián Konček <mkoncek>
Status: CLOSED ERRATA QA Contact: Martin Kyral <mkyral>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 8.8CC: mizdebsk, mkyral
Target Milestone: rcKeywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: maven-3.6-8080020230202141236.9d367344 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-05-16 08:42:08 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Marián Konček 2023-01-25 10:25:16 UTC
This bug was initially created as a copy of Bug #2096431

I am copying this bug because: 
We discovered that this bug is also present in the maven:3.6 stream in RHEL 8.
(But present neither in maven:3.5 nor in maven:3.8)


Description of problem:

JAVA_HOME is not honoured, hard-coded jdk is used instead, thus killing 100% multi-jdk development and purpose of several possible javas in system.

Version-Release number of selected component (if applicable):

maven-3.6.3-14.el9.noarch

Steps to Reproduce:
1. dnf install maven
- that pulls jdk11 in 
2. remove all jdks 
3. extract custom jdk
4 export correctly JAVA_HOME to point to correct custom JDK
5 try to run maven

Actual results:
/usr/bin/mvn --version
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE

or:

Steps to Reproduce:
1. dnf install maven
- that pulls jdk11 in 
3. extract custom jdk
4 export correctly JAVA_HOME to point to correct custom JDK
5 try to run maven

Actual results:
/usr/bin/mvn --version

Will now work, but will use bad JDK - hardcoded instead of appointed one

Expected results:
Maven will use specified JDK without questioning uses actions, as promised in https://fedoraproject.org/wiki/Changes/Decouple_system_java_setting_from_java_command_setting

Additional info:
This popups form time to time in fedora, but usually gets quickly fixed. I'm wondering why and how it bubbled to rhel

Comment 2 Mikolaj Izdebski 2023-02-02 19:13:41 UTC
Pre-verified build maven-3.6-8080020230202141236.9d367344

This bug is covered by /Regression/java-home-override test that checks
whether Maven allows overriding JAVA_HOME by calling user:
https://src.fedoraproject.org/tests/maven/blob/main/f/Regression/java-home-override
This test was executed as part of baseos-ci.redhat-module.other.functional

All gating tests passed.

Comment 8 errata-xmlrpc 2023-05-16 08:42:08 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (maven:3.6 bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2023:2899