包的简介
Julia 中第三方库所对应的名称是 package,常称为包。
开源的第三方库使我们可以交流成熟的代码。对于使用者,可以借此调用经过别人检查、优化、调试的代码,避免浪费时间。对于开发者,可以获得他人的建议与帮助。
包被安装后,其内容可以作为模块被调用。
在 REPL 中输入 ]
可进入包管理器模式,此时可以输入命令。
该模式下常用指令包括:
help
获取帮助及命令列表add
下载包,每天只会自动更新注册表一次build
手动构建包remove
移除包update
只更新指定的包,使用--preserve
命令选项放松限制gc
回收包preview
预览why
告知包为何存在于清单中
基础示例
(@v1.6) pkg> add LightLearn # 下载包
...
Precompiling project...
1 dependency successfully precompiled in 7 seconds (173 already precompiled)
julia> using LightLearn # 导入
julia> init() # 使用
也可以在程序中使用 Pkg
模块进行管理:
import Pkg
Pkg.add(PackageSpec(name="Example", version="0.3.1"))
包查找
包服务器
Julia 1.5 以上会默认使用官方服务器。
对于国内用户,官方服务器会自动导向北京、上海或者广州的服务器(状态在此查看),可以通过修改环境变量 JULIA_PKG_SERVER
修改默认服务器。
可参阅 Julia PkgServer 镜像服务及镜像站索引。
了解指定的包
找到文档
利用 Juliahub 搜索找到原仓库,看是否有提供文档
本站点提供了少量的中文的包概述
如果该包是一个其它语言的库的接口,原本的库很可能也有文档,并且网上可能找到相关教程
获取
docstring
在帮助模式中使用包名
尝试使用
apropos
检索
获取结构信息
使用
?包名.
+Tab
列出包中导出所有东西(也可使用names(包名)
)利用
methods
、methodsof
、dump
、functionloc
等函数
了解具体实现
尝试阅读源代码
在包所在仓库提问
Pkg
Pkg.jl
是 Julia 标准库的一部分,用于管理包。REPL 中的命令也是通过调用 Pkg.jl
的函数实现的。
了解更多内容可参阅: