我想使用 Haxe 编写一个库,该库可以被其他项目以各种不同的语言使用。
目前我在我的图书馆的顶部:
import neko.io.File;
import neko.io.FileInput;
import neko.io.FileOutput;
import neko.FileSystem;
import neko.io.Process;
所以我的库编译为 neko 就好了,使用-neko
标志。但是,如果我尝试使用该-cpp
标志,则找不到包:
$ haxe -cp src -main sws/Root.hx -cpp build/sws.CXX
src/sws/Root.hx:3: characters 0-20 : You can't access the neko package with current compilation flags (for neko.io.File)
我认为解决方案是改为像这样进行导入:
import sys.io.File;
import sys.io.FileInput;
import sys.io.FileOutput;
import sys.FileSystem;
import sys.io.Process;
并让 Haxe 更改sys
为neko
或cpp
取决于我使用的编译标志。(假设所有模块都可以在所有目标语言中使用。)但这也不起作用。
$ haxe -cp src -main sws/Root.hx -neko build/sws.n
src/sws/Root.hx:3: characters 0-19 : Class not found : sys.io.File
$ haxe -cp src -main sws/Root.hx -cpp build/sws.CXX
src/sws/Root.hx:3: characters 0-19 : Class not found : sys.io.File
我应该怎么做?