我正在尝试编译Haxe类而不使用构建hxml
文件定义入口点。
我的文件夹结构如下所示:
root
|
___src
|___Test.hx
|
___build.hxml
Test.hx
具有以下内容:
package foo;
class BarLib
{
public function new() {}
public function test() {
return "Hello from BarLib!";
}
}
build.hxml
看起来像这样:
-cp src
--macro "include('foo')"
-js test.js
然后我从创建文件haxe build.hxml
的根文件夹运行test.js
,但其内容几乎为空:
// Generated by Haxe 3.3.0
(function () { "use strict";
})();
似乎无法找到包foo
。
我做错了什么?
答案 0 :(得分:7)
您声明Test.hx
是foo
包的一部分,但是,它位于名为src
的文件夹中。如果将其移至src/foo
,Haxe将生成以下输出:
// Generated by Haxe 3.3.0
(function () { "use strict";
var foo_BarLib = function() {
};
foo_BarLib.prototype = {
test: function() {
return "Hello from BarLib!";
}
};
})();
有一个名为Test.hx
的文件并没有真正定义名为Test
的类型,这也有点不寻常。 BarLib.hx
可能是一个更好的名字。
答案 1 :(得分:1)
你也可以使用haxe -cp src foo.Test
编译一个没有入口点的类(及其引用)