google/closure-compiler

Closure compiler does not work on Windows at least if path contains UTF-8 characters

Open

#3784 aperta il 16 mar 2021

Vedi su GitHub
 (5 commenti) (1 reazione) (0 assegnatari)Java (1197 fork)batch import
help wanted

Metriche repository

Star
 (7176 star)
Metriche merge PR
 (Merge medio 12g 15h) (1 PR mergiata in 30 g)

Descrizione

If an input file name contains non-7bit-ASCII characters in it, Closure fails to operate.

STR:

  1. Install Closure compiler to directory "☃äö Ć € 🦠". (not mandatory, but for good measure to see if any issues arise from that)
  2. Pass an input file "☃äö Ć € 🦠.js" to Closure compiler as --externs or --js.

Results in

C:\☃em sd äö Ć € 🦠\emsdk\emscripten\main> dir äö.js
 Volume in drive C has no label.
 Volume Serial Number is 8847-8E7D

 Directory of C:\☃em sd äö Ć € 🦠\emsdk\emscripten\main

03/16/2021  06:18 PM             3,472 äö.js
               1 File(s)          3,472 bytes
               0 Dir(s)  1,757,394,030,592 bytes free

C:\☃em sd äö Ć € 🦠\emsdk\emscripten\main> node_modules\.bin\google-closure-compiler --externs äö.js --js_output_file out.js --js a.js
[ '--externs', 'äö.js', '--js_output_file', 'out.js', '--js', 'a.js' ]
ERROR - [JSC_READ_ERROR] Cannot read file äö.js: äö.js

1 error(s), 0 warning(s)

C:\☃em sd äö Ć € 🦠\emsdk\emscripten\main> node_modules\.bin\google-closure-compiler --externs a.js --js_output_file out.js --js äö.js
[ '--externs', 'a.js', '--js_output_file', 'out.js', '--js', 'äö.js' ]
ERROR - [JSC_READ_ERROR] Cannot read file äö.js: äö.js

1 error(s), 0 warning(s)
  1. Pass UTF-8 chars as output file :
C:\☃em sd äö Ć € 🦠\emsdk\emscripten\main> node_modules\.bin\google-closure-compiler --js a.js --js_output_file äää.js
[ '--js', 'a.js', '--js_output_file', 'äää.js' ]

C:\☃em sd äö Ć € 🦠\emsdk\emscripten\main> dir *.js
 Volume in drive C has no label.
 Volume Serial Number is 8847-8E7D

 Directory of C:\☃em sd äö Ć € 🦠\emsdk\emscripten\main

03/16/2021  06:18 PM             3,472 a.js
03/16/2021  06:24 PM             5,595 äää.js
               2 File(s)          9,067 bytes
               0 Dir(s)  1,757,393,338,368 bytes free

Guida contributor