You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Genie.jl中模块调用报错:如何在项目中定义自定义模块?

解决Genie.jl中本地模块调用报错的问题

针对你遇到的using NewModel报错问题,有几种实用的解决方式:

方法一:显式引入模块文件(快速临时方案)

在newcon.jl开头先引入模块文件,再调用本地模块(注意模块名前加.):

# 从控制器目录向上一级,再进入models目录引入文件
include("../models/newmod.jl")
# 调用本地定义的模块,前面的点表示这是当前项目内的本地模块
using .NewModel

方法二:添加模块路径到Julia加载路径(适合多模块场景)

在项目的启动入口文件(比如app.jl或bootstrap.jl)中,把模型所在目录添加到Julia的LOAD_PATH,确保这段代码在加载控制器之前执行:

# 动态拼接模型目录的绝对路径
push!(LOAD_PATH, joinpath(@__DIR__, "resources", "models"))

之后在newcon.jl里就可以直接使用using NewModel调用模块。

方法三:将本地模块注册为项目子包(规范长期方案)

如果你的模块功能复杂,推荐用子包方式管理:

  1. 在app/resources/models目录下创建Project.toml,填入以下内容(UUID可以用uuidgen命令生成,替换示例内容):
name = "NewModel"
uuid = "xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
authors = ["你的名字 <你的邮箱>"]
version = "0.1.0"
  1. 回到项目根目录,执行命令注册本地子包:
julia --project -e 'using Pkg; Pkg.develop(path="app/resources/models")'
  1. 此时主项目的Project.toml会自动添加NewModel作为依赖,之后就能在newcon.jl里直接using NewModel。

内容的提问来源于stack exchange,提问作者weera

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 06:35:59