自从升级到Windows 10后,我在CMD中运行Gradle时,控制台输出的内容很“奇怪”。
[0K
[0K
[2A[1m<==-----------> 18% EXECUTING [9s][m[34D[1B[1m> :compileScala[m[15D[1B[2A[1m<==-----------> 18% EXECUTING [10s][m[35D[2B[2A[1m<==-----------> 18% EXECUTING [11s][m[35D[2B[2A[1m<==-----------> 18% EXECUTING [12s][m[35D[2B[2A[1m<==-----------> 18% EXECUTING [13s][m[35D[2B[2A[1m<==-----------> 18% EXECUTING [14s][m[35D[2B[2Athere were four feature warnings; re-run with -feature for details
four warnings found
我想这可能是控制字符失控了,Gradle试图合理地着色其输出,而Windows却将其解释错误。PowerShell和SBT正常工作,但是从PowerShell复制控制台"属性"设置到CMD并不能解决问题。
有人解决过此问题吗?
更新 2018-01-28 它也发生在我的Jenkins/Alpine/Docker设置中,位于OSX/macOS/whatnot之上。不再仅限于Windows。
... 但是 ... 它在公司给我的Surface笔记本电脑上没有发生 ... 非常奇怪。无论如何,gradlew --console=plain
对我来说很好用。
GetConsoleMode
获取当前模式,然后在ENABLE_VIRTUAL_TERMINAL_PROCESSING
标志中进行OR运算,并通过SetConsoleMode
设置新模式来在控制台中启用它。如果此操作失败,则不支持VT模式。这可能是Windows的旧版本或设置了使用传统控制台的选项。 - Eryk Sun