怎么解决?
完整代码贴一下
一次只能传一个图片,这是模块源码
两种调用方式都是报MD未定义
julia版本是1.5.0rc1
Julia默认不会从当前目录导入module
你有几种方法可以做:
- 在使用using或import前,先include你的module文件
include("filename.jl")
- 或者在using或import前将当前目录加入LOAD_PATH
push!(LOAD_PATH, ".")
- 或者在运行前设置环境变量
export JULIA_LOAD_PATH=$JULIA_LOAD_PATH:"."
我使用的是using .MD
MD前面有句号,表示的就是当前目录,如果MD前面没有加句号会报错ERROR: LoadError: ArgumentError: Package MD not found in current path:
你的回答不是用来解决我的问题的…
你还是把全部用到的代码一次性贴出来吧,用markdown贴代码的格式,我马上会回你
嗯??
julia> module MD
export show1
function show1()
print("show md.")
end
end
Main.MD
julia> import .MD
julia> function demo()
MD.show1()
end
demo (generic function with 1 method)
julia> demo()
show md.
julia>
我不知道1.5是否有什么新的特性能够这样写,但是在1.4下这样不能工作。
使用.MD这样的情况是在include你的module文件后才能工作,后2种方法需要用using/import MD,不加.。
Main.MD
这句是在 module MD end之后添加的吗? 为什么我添加这句还是报MD未定义呢?
仔细看了一遍module相关的文档,没有找到相关的说明
你说的是不是像Python一样,直接从当前目录导入。
但是我没有看到1.5有支持。
push!(LOAD_PATH, “.”)和 import .MD(MD前加句号)
这两种写法效果应该是一样的
好像是Main.MD这句的问题,但是找不到相关的资料说明
push!(LOAD_PATH, “.”)是说把当前目录加入库的搜索路径,之后就可以用using/import MD;
或者在include(“filename.jl”)后,你才能够用using/import .MD。
你确定有哪里的文档写可以直接用import .MD这种方式。
push后要使用using/import MD,不能加dot
如果使用加dot的情况需要include (“filename.jl”)。
你的module MD所在的文件名字是MD.jl吗?