从 Bash 调用 java:“无法执行二进制文件”

从 Bash 调用 java:“无法执行二进制文件”

我有这个简单的 Bash 脚本:

#!/bin/bash
java -jar ClosureCompiler/compiler.jar --js ../src/typescript.js --js ../src/ts-compiler.js --js_output_file TSCompiler.js

build.sh当我尝试在 Windows 下的 MSYS 环境中运行脚本时,出现此错误(64 位!):

./build.sh: ./build.sh: cannot execute binary file

但如果我直接在命令行窗口中输入命令,该命令本身就可以工作!

答案1

该文件被编码为UCS-2 Little Endian!
将编码更改为UTF-8 without BOM解决了这个问题。

相关内容