我发现在构建 Haxe 项目时,仅编译从 Main 引用的代码或在 Main 中间接/直接引用的类引用的代码。如何强制 Haxe 将所有源 .HX 文件编译为目标语言?我尝试过使用 DCE 标志(no、std 和 full),但它们似乎都没有什么区别。Haxe 版本正在开发 3.1.3。
更新:因此,使用下面答案中描述的宏,我的解决方案是为我正在构建的库创建一个根级包,然后将该包名称包含在宏编译器选项中以包含该包和所有子包,从而确保Haxe 编译所有类,无论是直接引用还是通过 main 间接引用。
一个例子是,如果您的根级别包名称是rootPackage,请添加一个额外的编译器选项,如下所示:
--macro include('rootPackage', true)
Run Code Online (Sandbox Code Playgroud)
我猜你使用的是 haxe 3.1.3 而不是 3.03,我们没有这样的版本。
添加--macro include(...)到您的 hxml.xml 中。
文档: http: //api.haxe.org/haxe/macro/Compiler.html#include
请记住在参数中使用单引号 ( 'string') 而不是双引号 ( )。"string"