Fra*_*ery 6 command-line cygwin scala windows-vista sbt
我在windows vista上使用cygwin 1.77.我遇到sbt
了shell中输出的问题.一些相关的环境变量:
TERM=cygwin
CYGWIN=server
LANG=C.UTF-8
Run Code Online (Sandbox Code Playgroud)
(1)当我输入sbt test
shell时包含很多不可打印的字符:
我怎样才能解决这个问题 ?
我的sbt shell脚本如下所示:
dir=`dirname $0`
stty -icanon min 1 -echo > /dev/null 2>&1
java -Djline.terminal=jline.UnixTerminal -Xmx512M -jar
`cygpath -w $dir`/sbt-launch-0.7.4.jar "$@"
stty icanon echo > /dev/null 2>&1
Run Code Online (Sandbox Code Playgroud)
(2)sbt
命令无法找到scalatest
jar并且我不知道如何配置它通过常春藤下载它.如果我将jar放入lib
文件夹,它就可以工作.
关于1):
Cygwin控制台的工作方式是Cygwin DLL的一部分将Unix终端控制序列映射到Windows控制台API调用.由于该终端仿真是Cygwin DLL的一部分,因此它不适用于非Cygwin程序,例如Java运行时.相反,java
它将直接与Windows控制台交谈,后者无法理解转义序列.因此它们直接出现在屏幕上.
有几种方法可以解决这个问题:
-Djline.terminal=jline.UnixTerminal
选项会这样做.CYGWIN=tty
选项.这样,在Cygwin控制台中调用的程序将其I/O连接到"伪终端"(pty)设备,而不是直接连接到控制台窗口.这使得终端仿真功能可用于非Cygwin程序,但这意味着使用Windows控制台API的程序将无法正常工作.(顺便说一句,该CYGWIN=server
选项已过时;无论如何,它启用的功能始终处于开启状态.)
归档时间: |
|
查看次数: |
2466 次 |
最近记录: |