scala / scala3

The Scala 3 compiler, also known as Dotty.
https://dotty.epfl.ch
Apache License 2.0
5.88k stars 1.06k forks source link

Windows - The system cannot find the path specified when umlaut in path #21994

Open JulianBohne opened 2 days ago

JulianBohne commented 2 days ago

Description

On Windows, if the user directory has an umlaut in it (e.g. 'ä'), the scala.bat file will not work properly and simply output: The system cannot find the path specified.

Compiler version

Scala code runner version: 1.4.3 Scala version (default): 3.5.2

Minimized code

> scala

Output

The system cannot find the path specified.

Expectation

The scala repl starts:

Welcome to Scala 3.5.2 (23.0.1, Java OpenJDK 64-Bit Server VM).
Type in expressions for evaluation. Or try :help.

scala>

Fix / Workaround

There are two problems in the batch file. One is, that the umlaut 'ä' was changed to '�' on the line SET CMDLINE="C:\Users\<name with ä>.

Note: I don't know where exactly this issue stems from.

Another issue is that the code page has to be set to 65001 to execute properly. This can be done by adding the following line at the top of the file:

@CHCP 65001>nul

The command CHCP 65001 changes the code page to 65001 and the rest disables the lines output (@echo off is not enough here).

Note: This worked for me, but could break things on other systems.

Gedochao commented 1 day ago

Corresponding Scala CLI ticket: