Skip to content

Commit 3231b5b

Browse files
Fix old scala runner to use correct JLine classpath (#22464)
* Remove JNA dependencies from dist scripts. * Add `jline-native` dependency (used by jline-terminal-jni) Issue affected only Windows users - when executing the script the no longer existing class path entries (jna-5, and jline-terminal-jna) were reported with errors as not existing files Fixes #22460 Forward-portable to Scala Next legacy runner scripts
2 parents 2bda6c1 + f70ef36 commit 3231b5b

File tree

4 files changed

+10
-12
lines changed

4 files changed

+10
-12
lines changed

dist/bin/common

+4-6
Original file line numberDiff line numberDiff line change
@@ -156,10 +156,8 @@ SCALA_LIB=$(find_lib "*scala-library*")
156156
SBT_INTF=$(find_lib "*compiler-interface*")
157157
JLINE_READER=$(find_lib "*jline-reader-3*")
158158
JLINE_TERMINAL=$(find_lib "*jline-terminal-3*")
159-
JLINE_TERMINAL_JNA=$(find_lib "*jline-terminal-jna-3*")
160-
161-
# jna-5 only appropriate for some combinations
162-
[[ ${conemu-} && ${msys-} ]] || JNA=$(find_lib "*jna-5*")
159+
JLINE_TERMINAL_JNI=$(find_lib "*jline-terminal-jni-3*")
160+
JLINE_NATIVE=$(find_lib "*jline-native-3*")
163161

164162
compilerJavaClasspathArgs () {
165163
# echo "dotty-compiler: $DOTTY_COMP"
@@ -184,8 +182,8 @@ compilerJavaClasspathArgs () {
184182
# jine
185183
toolchain+="$JLINE_READER$PSEP"
186184
toolchain+="$JLINE_TERMINAL$PSEP"
187-
toolchain+="$JLINE_TERMINAL_JNA$PSEP"
188-
[ -n "${JNA-}" ] && toolchain+="$JNA$PSEP"
185+
toolchain+="$JLINE_TERMINAL_JNI$PSEP"
186+
toolchain+="$JLINE_NATIVE$PSEP"
189187

190188
if [ -n "${jvm_cp_args-}" ]; then
191189
jvm_cp_args="$toolchain$jvm_cp_args"

dist/bin/common.bat

+2-2
Original file line numberDiff line numberDiff line change
@@ -53,5 +53,5 @@ for /f "delims=" %%f in ('dir /a-d /b "%_LIB_DIR%\*scala-library*"') do
5353
for /f "delims=" %%f in ('dir /a-d /b "%_LIB_DIR%\*compiler-interface*"') do set "_SBT_INTF=%_LIB_DIR%\%%f"
5454
for /f "delims=" %%f in ('dir /a-d /b "%_LIB_DIR%\*jline-reader-3*"') do set "_JLINE_READER=%_LIB_DIR%\%%f"
5555
for /f "delims=" %%f in ('dir /a-d /b "%_LIB_DIR%\*jline-terminal-3*"') do set "_JLINE_TERMINAL=%_LIB_DIR%\%%f"
56-
for /f "delims=" %%f in ('dir /a-d /b "%_LIB_DIR%\*jline-terminal-jna-3*"') do set "_JLINE_TERMINAL_JNA=%_LIB_DIR%\%%f"
57-
for /f "delims=" %%f in ('dir /a-d /b "%_LIB_DIR%\*jna-5*"') do set "_JNA=%_LIB_DIR%\%%f"
56+
for /f "delims=" %%f in ('dir /a-d /b "%_LIB_DIR%\*jline-terminal-jni-3*"') do set "_JLINE_TERMINAL_JNI=%_LIB_DIR%\%%f"
57+
for /f "delims=" %%f in ('dir /a-d /b "%_LIB_DIR%\*jline-native-3*"') do set "_JLINE_NATIVE=%_LIB_DIR%\%%f"

dist/bin/scala.bat

+2-2
Original file line numberDiff line numberDiff line change
@@ -77,8 +77,8 @@ set "__TOOLCHAIN=%__TOOLCHAIN%%_SCALA3_TASTY_INSPECTOR%%_PSEP%"
7777
@rem # jline
7878
set "__TOOLCHAIN=%__TOOLCHAIN%%_JLINE_READER%%_PSEP%"
7979
set "__TOOLCHAIN=%__TOOLCHAIN%%_JLINE_TERMINAL%%_PSEP%"
80-
set "__TOOLCHAIN=%__TOOLCHAIN%%_JLINE_TERMINAL_JNA%%_PSEP%"
81-
set "__TOOLCHAIN=%__TOOLCHAIN%%_JNA%%_PSEP%"
80+
set "__TOOLCHAIN=%__TOOLCHAIN%%_JLINE_TERMINAL_JNI%%_PSEP%"
81+
set "__TOOLCHAIN=%__TOOLCHAIN%%_JLINE_NATIVE%%_PSEP%"
8282

8383
if defined _SCALA_CPATH (
8484
set "_JVM_CP_ARGS=%__TOOLCHAIN%%_SCALA_CPATH%"

dist/bin/scalac.bat

+2-2
Original file line numberDiff line numberDiff line change
@@ -106,8 +106,8 @@ set "__TOOLCHAIN=%__TOOLCHAIN%%_SCALA3_TASTY_INSPECTOR%%_PSEP%"
106106
@rem # jline
107107
set "__TOOLCHAIN=%__TOOLCHAIN%%_JLINE_READER%%_PSEP%"
108108
set "__TOOLCHAIN=%__TOOLCHAIN%%_JLINE_TERMINAL%%_PSEP%"
109-
set "__TOOLCHAIN=%__TOOLCHAIN%%_JLINE_TERMINAL_JNA%%_PSEP%"
110-
set "__TOOLCHAIN=%__TOOLCHAIN%%_JNA%%_PSEP%"
109+
set "__TOOLCHAIN=%__TOOLCHAIN%%_JLINE_TERMINAL_JNI%%_PSEP%"
110+
set "__TOOLCHAIN=%__TOOLCHAIN%%_JLINE_NATIVE%%_PSEP%"
111111

112112
if defined _SCALA_CPATH (
113113
set "_JVM_CP_ARGS=%__TOOLCHAIN%%_SCALA_CPATH%"

0 commit comments

Comments
 (0)