Skip to content

Commit c9785fc

Browse files
authored
Fix JAVA_HOME in java-common (#501)
* Revert "Fix JAVA_HOME var name for arm64 (#481)" This reverts commit 2779ebf. * add lookup for arm64 extended JAVA_HOME * update comment * add check for arm64 * remove extra space * restore line break * add line break
1 parent 48307ba commit c9785fc

File tree

3 files changed

+11
-12
lines changed

3 files changed

+11
-12
lines changed

common-npm-packages/java-common/java-common.ts

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -123,15 +123,14 @@ export function findJavaHome(jdkVersion: string, jdkArch: string): string {
123123
const jdkMajorVersion: number = coerce(jdkShortVersion).major;
124124
// jdkArchitecture is either x64, x86 or arm64
125125
// envName for version 1.7 and x64 would be "JAVA_HOME_7_X64"
126-
var envName: string;
127-
let discoveredJavaHome: string;
128-
if(jdkArch.toLowerCase() === 'arm64'){
129-
// For arm64, we use a different environment variable naming convention
130-
envName = "JAVA_HOME_" + jdkMajorVersion + "_" + jdkArch.toLowerCase();
131-
discoveredJavaHome = process.env[envName];
132-
} else {
133-
envName = "JAVA_HOME_" + jdkMajorVersion + "_" + jdkArch.toUpperCase();
134-
discoveredJavaHome = tl.getVariable(envName);
126+
var envName = "JAVA_HOME_" + jdkMajorVersion + "_" + jdkArch.toUpperCase();
127+
// MS-hosted runners set JAVA_HOME_<version>_arm64 variable for pre-installed ARM JDKs.
128+
// If JAVA_HOME_<version>_ARM64 is not found, search for JAVA_HOME_<version>_arm64.
129+
var arm64EnvName = "JAVA_HOME_" + jdkMajorVersion + "_" + jdkArch.toLowerCase();
130+
let discoveredJavaHome = tl.getVariable(envName);
131+
if(!discoveredJavaHome && jdkArch.toLowerCase() === 'arm64'){
132+
// Using process.env to read the environment variable as taskLib.getVariable converts the name to upper case.
133+
discoveredJavaHome = process.env[arm64EnvName];
135134
}
136135

137136
if (!discoveredJavaHome) {

common-npm-packages/java-common/package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

common-npm-packages/java-common/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "azure-pipelines-tasks-java-common",
3-
"version": "2.263.0",
3+
"version": "2.264.0",
44
"description": "Azure Pipelines tasks Java Common",
55
"main": "java-common.js",
66
"scripts": {

0 commit comments

Comments
 (0)