diff --git a/dist/index.js b/dist/index.js index 2634606..d77e3be 100644 --- a/dist/index.js +++ b/dist/index.js @@ -4742,6 +4742,12 @@ function getJava(version, arch, jdkFile, javaPackage) { toolPath = yield tc.cacheDir(jdkDir, javaPackage, getCacheVersionString(version), arch); } let extendedJavaHome = 'JAVA_HOME_' + version + '_' + arch; + core.exportVariable(extendedJavaHome, toolPath); //TODO: remove for v2 + // For portability reasons environment variables should only consist of + // uppercase letters, digits, and the underscore. Therefore we convert + // the extendedJavaHome variable to upper case and replace '.' symbols and + // any other non-alphanumeric characters with an underscore. + extendedJavaHome = extendedJavaHome.toUpperCase().replace(/[^0-9A-Z_]/g, '_'); core.exportVariable('JAVA_HOME', toolPath); core.exportVariable(extendedJavaHome, toolPath); core.addPath(path.join(toolPath, 'bin')); diff --git a/src/installer.ts b/src/installer.ts index 487db6f..ba70611 100644 --- a/src/installer.ts +++ b/src/installer.ts @@ -87,6 +87,12 @@ export async function getJava( } let extendedJavaHome = 'JAVA_HOME_' + version + '_' + arch; + core.exportVariable(extendedJavaHome, toolPath); //TODO: remove for v2 + // For portability reasons environment variables should only consist of + // uppercase letters, digits, and the underscore. Therefore we convert + // the extendedJavaHome variable to upper case and replace '.' symbols and + // any other non-alphanumeric characters with an underscore. + extendedJavaHome = extendedJavaHome.toUpperCase().replace(/[^0-9A-Z_]/g, '_'); core.exportVariable('JAVA_HOME', toolPath); core.exportVariable(extendedJavaHome, toolPath); core.addPath(path.join(toolPath, 'bin'));