编辑:最后它与它无关。我正在为类似情况的任何人提供答复。Julia - REPL在修改模块代码后不更新模块变量
我在一个月前发现了朱莉娅,从此便一直对它着了迷。 但是,似乎编译(或变量范围)对我来说仍然不清楚。
我有这个模块中plots.jl
:
module plottinghhkp
instance_path = "somestring"
function dosomething()
...
end
...
end
,然后将其包含在REPL运行模块功能
julia> include("plots.jl")
...
julia> hhkplot.instance_path
julia> "somestring"
然后我修改instance_path
,并再次使用include
重新导入,但instance_path
显示旧值而不是新值:
julia> include("plots.jl")
...
julia> plottinghhkp.instance_path
"somestring"
我解决是变量重命名为instancepath
,这样一个新的符号被创建,但是,自动完成现在显示:
julia> plottinghhkp.
instance_path instancepath
julia> plottinghhkp.instancepath
"newvalue"
julia> plottinghhkp.instance_path
"somestring"
当INSTANCE_PATH符号不模块中存在了。 创造一个新的环境与workspace()
永无止境。
这是怎么发生的?我是否需要在没有预编译的情况下显式加载Julia,或者将__precompile__(false)
添加到模块中?或者它是关于变量范围的东西?
谢谢。