在没有主入口点的情况下编译 Haxe
Compiling Haxe without a main entry point
我正在尝试通过使用构建 hxml
文件编译 Haxe class 而不定义入口点。
我的文件夹结构如下所示:
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
然后我从创建文件 test.js
的根文件夹中 运行 haxe build.hxml
,但它的内容几乎是空的:
// Generated by Haxe 3.3.0
(function () { "use strict";
})();
好像找不到包裹foo
。
我做错了什么?
您声明 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
可能是一个更好的名字。
您还可以使用 haxe -cp src foo.Test
编译单个 class(及其引用)而不使用入口点
我正在尝试通过使用构建 hxml
文件编译 Haxe class 而不定义入口点。
我的文件夹结构如下所示:
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
然后我从创建文件 test.js
的根文件夹中 运行 haxe build.hxml
,但它的内容几乎是空的:
// Generated by Haxe 3.3.0
(function () { "use strict";
})();
好像找不到包裹foo
。
我做错了什么?
您声明 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
可能是一个更好的名字。
您还可以使用 haxe -cp src foo.Test
编译单个 class(及其引用)而不使用入口点