Engee 文档

精灵的公共软件管理方法

页面进行中。

使用Genie框架创建简单应用程序的示例也在 社区Engee

这里介绍了所有使用该框架的"精灵"公共软件管理方法。 精灵。 要在Genie应用程序中使用它们,请在代码(应用程序)中使用"使用Engee"命令连接*Engee*工具库。jl)。

"精灵"方法

engee.genie.start(app_path::String; devel::Bool=false, log_file::String="")

使用指定的路径启动Genie应用程序。

在使用命令之前 engee.genie.start 确保如果应用程序是一个目录,它包含一个带有应用程序代码和扩展名的文件。jl. 也删除配置和*。toml文件(如果有的话)。

参数

  • app_path::String:应用程序目录的路径。 它可以是相对的或绝对的。

  • devel::Bool=false:用于启用开发模式的参数,其中应用对代码的更改而不重新启动应用程序。

  • log_file::String="":用于指定日志文件路径的参数。 如果未指定,则不会单独保存日志。

例子

# 通过应用程序启动精灵。jl应用程序文件,没有开发模式和保存日志
engee.genie.start("/user/app.jl")

# 通过应用程序文件启动精灵。jl,具有开发模式和日志保存
engee.genie.start("/user/app.jl", devel=true, log_file="/user/logs.txt")
engee.genie.stop(app_path::String)

停止正在运行的精灵应用程序。

参数

app_path::String:应用程序目录的路径。 它可以是相对的或绝对的。

例子

# 在绝对路径上停止应用程序
engee.genie.stop("/user/app.jl")

# 按相对路径停止应用程序
engee.genie.stop("app.jl")
engee.genie.list()

显示所有正在运行的精灵应用程序的列表。

例子

engee.genie.list()
engee.genie.eval(code::AbstractString)

在正在运行的Genie应用程序的上下文之外的Engee工作区中执行指定的代码。 它用于运行单个表达式、调试或动态执行代码,而无需重新启动应用程序。

参数

code::AbstractString:将在Engee工作区中执行的带有Julia代码的行。

例子

engee.genie.eval("x = 5")
engee.genie.recv(wsVarName::AbstractString; context::Module=GenieAPI )

在Genie应用程序执行期间,从Engee工作区中的指定上下文(模块)返回变量的值。

默认情况下,在模块中搜索变量 GenieAPI,但如果需要,您可以通过参数显式指定另一个模块 context. 因此,如果变量在另一个模块中定义,则使用该参数。 context,指示在哪个命名空间中搜索它。

参数

  • wsVarName::AbstractString:要获取其值的变量的名称。

  • context::Module=GenieAPI:在其中搜索变量的模块。 如果变量不属于模块,则显式指定。 GenieAPI.

例子

# 从主模块获取变量x的值
engee.genie.recv("x", Main)

# 从默认模块获取变量a的值
engee.genie.recv("a")

# 从用户模块获取value变量的值
engee.genie.recv("value"; context=MyModule)
engee.genie.send(wsVarName::AbstractString, value::Any)

保存值 value 到一个变量 wsVarNameEngee工作区中,当应用程序在Genie上运行时。

如果以前不存在具有此名称的变量,则会自动创建该变量。 该功能便于将中间结果或用户数据从Genie应用程序传输到Engee会话。

参数

  • wsVarName::AbstractString:为其分配值的变量的名称。

  • value::Any:将存储在变量中的值。 它可以是任何类型。

例子

# 将值124赋给变量x
engee.genie.send("x", 124)

# 在消息变量中保存字符串
engee.genie.send("message", "Hello")