1

我刚刚使用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 的文件。顺便说一句,您为什么__javascript__将编译目录的名称从 transcrypt 3.6 更改为__target__in transcrypt 3.7?

4

1 回答 1

5

好的,我终于发现自己出了什么问题。如果您收到该错误,很可能您的机器上没有安装 Java,这是缩小 JavaScript 代码所需的,transcrypt 似乎默认尝试。所以只需调用命令:

transcrypt -n alerts2.py

它运行没有任何错误,因为 -n 禁用了代码的缩小。顺便说一句,如果 transcrypt 会输出类似“警告:未安装 Java - 缩小已禁用。安装 Java 以进行代码缩小”之类的错误消息,那就太好了。或类似的东西,仍然输出未缩小的代码。或者甚至更好地完全不依赖 Java 来缩小代码。我认为应该是 Python 中的三行。

于 2019-02-24T07:43:00.583 回答