You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
GraalVM native-image (released versions ≤21.0.x) uses a `20\d\d` regex
to find Visual Studio installations, which does not match VS 2026's
`\18\` directory. Previously, the action skipped MSVC setup for JDK 17+
assuming native-image handles it — but it can't find VS 2026.
Now the action always runs vcvarsall.bat on Windows, putting cl.exe on
PATH so native-image skips its own detection. For JDK 17+ and dev
builds, failures are non-fatal (warning instead of error) since future
native-image versions with vswhere support will handle it.
Fixes#220
.split('\f')// form feed page break (printed by `cls`)
59
+
core.debug(vcvarsallOutput)
61
60
62
-
constoriginalEnvMap=newMap<string,string>()
63
-
for(constlineoforiginalEnv.split('\r\n')){
64
-
if(line.includes('=')){
65
-
const[name,value]=line.split('=')
66
-
originalEnvMap.set(name,value)
67
-
}elseif(line){
68
-
core.debug(`Skipping ${line} (does not include '=')...`)
61
+
constoriginalEnvMap=newMap<string,string>()
62
+
for(constlineoforiginalEnv.split('\r\n')){
63
+
if(line.includes('=')){
64
+
const[name,value]=line.split('=')
65
+
originalEnvMap.set(name,value)
66
+
}elseif(line){
67
+
core.debug(`Skipping ${line} (does not include '=')...`)
68
+
}
69
69
}
70
-
}
71
70
72
-
for(constlineofupdatedEnv.split('\r\n')){
73
-
if(line.includes('=')){
74
-
const[name,value]=line.split('=')
75
-
constoriginalValue=originalEnvMap.get(name)
76
-
if(value!==originalValue){
77
-
core.exportVariable(name,value)
78
-
core.debug(`"${name}" set to "${value}"`)
71
+
for(constlineofupdatedEnv.split('\r\n')){
72
+
if(line.includes('=')){
73
+
const[name,value]=line.split('=')
74
+
constoriginalValue=originalEnvMap.get(name)
75
+
if(value!==originalValue){
76
+
core.exportVariable(name,value)
77
+
core.debug(`"${name}" set to "${value}"`)
78
+
}
79
+
}elseif(line){
80
+
core.debug(`Skipping ${line} (does not include '=')...`)
79
81
}
80
-
}elseif(line){
81
-
core.debug(`Skipping ${line} (does not include '=')...`)
82
82
}
83
+
}catch(error){
84
+
if(isRequired){
85
+
throwerror
86
+
}
87
+
core.warning(
88
+
`${errorinstanceofError ? error.message : error}. This is not required for this version of GraalVM but native-image may fail if Visual Studio cannot be detected automatically.`
0 commit comments