Из документов Haxelib , на которые вы ссылались:
Библиотеки с помощником run.n
или основным классом, определенным в haxelib.json
, могут быть выполнены с использованием haxelib run
.
Поскольку вы предоставляете класс main
, Haxelib пытается запустить ваш код во встроенном интерпретаторе макросов Haxe, используя аргумент --interp
.
Интерпретатор макросов в Haxe 3 не поддерживает многопоточность, поэтому возникла ошибка. Вы можете обойти это, скомпилировав файл run.n
и упаковав его в свою библиотеку, чтобы скрипт выполнялся в Neko VM:
haxe -main Main -neko run.n
Haxe 4 представила поддержку потоков для своего нового интерпретатора макросов под названием "Eval" в выпуске preview.5
. Начиная с этой версии, вы можете использовать eval.vm.Thread
. Тем не менее, обратите внимание, что из-за этого ваша команда Haxelib run
не будет работать для людей, использующих более старые версии Haxe. Так что, если вы хотите максимальной совместимости, остановитесь на Neko.