E4067#
main 包中缺少 main 函数。
在 MoonBit 中,包分为 main 包和非 main 包两类。非 main 包通常作为库,为其他包提供功能;main 包则是程序的入口。因此,main 包应该包含一个作为程序入口的 main 函数。
错误示例#
假设在包 main 中:
main/moon.pkg:
options(
"is-main": true,
)
main/main.mbt:
///|
pub fn helper() -> Unit {
()
}
建议#
你可以在 main 包中添加一个 main 函数:
main/main.mbt:
///|
priv struct A(Int)
///|
fn A::to_int(self : A) -> Int {
self.0
}
///|
fn main {
let a = A(42)
println(a.to_int())
}
或者,您可以通过在包配置文件中将 "is-main" 设置为 false 来将包设置为非主包。
main/moon.pkg:
options(
"is-main": false,
)