我在Julia导入模块时找到these instructions,但是我的行为有些奇怪,我想知道这是否正常 .
我的文件 tst.jl
和 Tmp.jl
是:
tst.jl
1 include("./Tmp.jl")
2 import Main.Tmp
3
4 Main.Tmp.greetings()
Tmp.jl
1 module Tmp
2 export greetings
3 function greetings()
4 println("Greetings Earthlings")
5 end
6 end
但我的 tst.jl
看不到 Tmp
,除非它在 Main
之下 .
我的 LOAD_PATH
看起来也很奇怪:
julia> LOAD_PATH
3-element Array{String,1}:
"@"
"@v#.#"
"@stdlib"
这是正常的,还是我的安装有问题?
我尝试使用JuliaBox并得到了
julia> LOAD_PATH
3-element Array{Any,1}:
"/opt/julia-0.6.2/local/share/julia/site/v0.6"
"/opt/julia-0.6.2/share/julia/site/v0.6"
"/home/jrun/.julia/v0.6"
但是,那是v0.6,而我在OpenSUSE Tumbleweed上使用Julia v1.0.2 .
我从https://julialang.org/downloads/下载了二进制文件,并手动将库和所有文件移动到相应的根目录中 .
1 回答
不,你应该使用相对模块路径,参见Relative and absolute module paths
在Julia1.0时代,我是正常的 . X-ref:https://discourse.julialang.org/t/interpreting-load-path-in-1-0/13529