Transcrypt 编译错误 Python 3.7 Windows

Transcrypt compilation error Python 3.7 Windows

我刚刚使用 https://github.com/bunkahle/Transcrypt-Examples/blob/master/alerts/alerts2.py 中的简单程序在 Python 3.7 Win7 上尝试了最新的 transcrypt,但出现编译错误:

C:\Python37\Programme\Transcrypt>transcrypt alerts2.py

Transcrypt (TM) Python to JavaScript Small Sane Subset Transpiler Version 3.7.16

Copyright (C) Geatec Engineering. License: Apache 2.0


Saving target code in: C:/Python37/Programme/Transcrypt/__target__/org.transcrypt.__runtime__.js
Saving minified target code in: C:/Python37/Programme/Transcrypt/__target__/org.transcrypt.__runtime__.js

Error while compiling (offending file last):
    File 'org.transcrypt.__runtime__', line 0, namely:

    [WinError 2] The system cannot find the specified file

Aborted

知道哪里出了问题吗?我刚得到一个名为 __target__ 的目录 其中包含一个名为 org.transcrypt.__runtime__.pretty.js 但没有 alerts2.js 的文件。顺便说一句,为什么在 transcrypt 3.7 中将编译目录的 __javascript__ 名称从 transcrypt 3.6 更改为 __target__

好吧,我终于找到自己出了什么问题。如果您遇到该错误,很可能 Java 未安装在您的机器上,这是缩小 javascript 代码所必需的,而 transcrypt 似乎默认尝试。所以只需调用命令:

transcrypt -n alerts2.py

它运行没有任何错误,因为 -n 禁用代码的缩小。顺便说一句,如果 transcrypt 会输出类似 "Warning: No Java installed - minification is disabled. Install Java for code minification." 之类的错误消息并且仍然输出未缩小的代码,那就太好了。或者甚至更好地根本不依赖 Java 来缩小代码。我想 Python 应该是三班轮。