har*_*s12 14 packages package julia
一个我合作的项目有四个不同的模块(Foo
,Bar
,Baz
和Plotting
),我一直在负责将它们组合成一个包.在Julia中制作新包装非常简单:
julia> Pkg.generate("MyPackage", "MIT")
Run Code Online (Sandbox Code Playgroud)
我将我的模块复制到~/.julia/v0.3/MyPackage/src/
并添加了include语句MyPackage.jl
.它看起来像这样:
module MyPackage
include("foo.jl")
include("bar.jl")
include("baz.jl")
include("plotting.jl")
end
Run Code Online (Sandbox Code Playgroud)
每个包含的文件都包含相应的模块.
我的主要问题是Plotting
需要永久导入,当我们使用其余部分时,它并不经常需要MyPackage
.我真的希望能够做这样的事情using MyPackage.Foo
只得到Foo
(特别是排除Plotting
其缓慢导入时间).我已经尝试了几种不同的方法来构建事物,包括在内部明确定义子模块MyPackage.jl
而不是单独定义每个文件,但无论我尝试什么,我总是得到加载延迟Plotting
.
是否可以构建一个包,以便您可以从中独立加载模块?如果是的话,怎么样?
注意:我是朱莉娅的新手,还是新手还在构建包.很抱歉,如果我的任何语义错误或任何不清楚的地方.
尝试Requires.jl:
Requires is a Julia package that will magically make loading packages faster, maybe. It supports specifying glue code in packages which will load automatically when a another package is loaded, so that explicit dependencies (and long load times) can be avoided.
归档时间: |
|
查看次数: |
709 次 |
最近记录: |