我如何强制 Haxe 编译所有源代码 类?
How can I force Haxe to compile all source classes?
我发现在构建 Haxe 项目时,只有从 Main 引用的代码或由 Main 引用的 indirectly/directly 引用的 class 代码被编译。如何强制 Haxe 将所有源 .HX 文件编译成目标语言?我试过使用 DCE 标志(no、std 和 full),但其中 none 似乎有所不同。为 Haxe 版本开发 3.1.3。
更新:所以使用下面答案中描述的宏,我的解决方案是为我正在构建的库创建一个根级包,然后将该包名称包含在宏编译器选项来包含那个和所有子包,从而确保 Haxe 编译所有 classes,无论是直接引用还是通过 main 间接引用。
例如,如果您的根级包名称是 rootPackage,请添加一个额外的编译器选项,如下所示:
--macro include('rootPackage', true)
我猜你使用的是 haxe 3.1.3 而不是 3.03,我们没有这样的版本。
在您的 hxml 中添加 --macro include(...)
。
文档:
http://api.haxe.org/haxe/macro/Compiler.html#include
记得对参数使用单引号 ('string'
) 而不是双引号 ("string"
)。
我发现在构建 Haxe 项目时,只有从 Main 引用的代码或由 Main 引用的 indirectly/directly 引用的 class 代码被编译。如何强制 Haxe 将所有源 .HX 文件编译成目标语言?我试过使用 DCE 标志(no、std 和 full),但其中 none 似乎有所不同。为 Haxe 版本开发 3.1.3。
更新:所以使用下面答案中描述的宏,我的解决方案是为我正在构建的库创建一个根级包,然后将该包名称包含在宏编译器选项来包含那个和所有子包,从而确保 Haxe 编译所有 classes,无论是直接引用还是通过 main 间接引用。
例如,如果您的根级包名称是 rootPackage,请添加一个额外的编译器选项,如下所示:
--macro include('rootPackage', true)
我猜你使用的是 haxe 3.1.3 而不是 3.03,我们没有这样的版本。
在您的 hxml 中添加 --macro include(...)
。
文档: http://api.haxe.org/haxe/macro/Compiler.html#include
记得对参数使用单引号 ('string'
) 而不是双引号 ("string"
)。