如何在 Julia 1.0 中安装软件包(UndefVarError: Pkg not defined)

Posted

技术标签:

【中文标题】如何在 Julia 1.0 中安装软件包(UndefVarError: Pkg not defined)【英文标题】:How to install a package in Julia 1.0 (UndefVarError: Pkg not defined) 【发布时间】:2019-01-18 11:45:16 【问题描述】:

我安装了 Julia 1.0,并想制作一个简单的情节。第一步是在 Julia 上输入:

Pkg.add("PyPlot")

但是,出现错误:

ERROR: UndefVarError: Pkg not defined.

当我输入时也会发生同样的事情:

Pkg.status()

在 Julia 中安装软件包的最佳方式是什么?我使用 MacOS。

【问题讨论】:

【参考方案1】:

在 Julia 1.0 中,有两种安装包的方法。首先,你可以这样做

using Pkg
Pkg.add("Packagename")

其次,你可以通过按]来使用Pkg REPL模式(类似于?,帮助模式和;,shell模式):

(v1.0) pkg> add Packagename

您可以在这里找到更多信息:https://docs.julialang.org/en/stable/stdlib/Pkg/# 在这里(现场演示):https://youtu.be/GBi__3nF-rM?t=28m1s

Julia 1.0 是全新的。前几天已经发布了,所以有些包还不兼容1.0。有时,安装包的主分支而不是最后一个标记版本会有所帮助。在我的机器上我必须这样做

(v1.0) pkg> add LaTeXStrings#master
(v1.0) pkg> add PyPlot

让 PyPlot 工作。希望这会有所帮助。

更新: LaTeXStrings 已更新(标记)。因此,上面的第一行不再需要了。

UPDATE2:另一个(较短的)现场演示可以在这里找到:https://www.youtube.com/watch?v=76KL8aSz0Sg

UPDATE3:还有第三种与包管理器交互的方式,即“pkg strings”:

using Pkg
pkg"add Packagename"

【讨论】:

你的回答解决了问题,评论是给刚入行的julia开发者...明显的步骤让代码更繁琐...【参考方案2】:

作为 Julia 的新手,我最初对 Julia 1.0 包管理器的困惑与 OP 的问题直接相关。我没有使用过 Julia 1.0 之前的 REPL,但它似乎曾经是 Pkg.add("Example") 开箱即用——不需要 using Pkg。网上有很多例子表明这是入门的方式。像我这样的 Julia 新用户一开始可能并没有意识到这一变化。

然而,Julia 1.0 REPL 要求用户在使用Pkg.add.("Example") 命令之前明确声明using Pkg

【讨论】:

以上是关于如何在 Julia 1.0 中安装软件包(UndefVarError: Pkg not defined)的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 msys 1.0 新软件包在 MinGW 中安装?

如何在 Julia 中找到我的包版本?

如何在UNBUTU中安装各种软件???

求大神帮忙解决关于CentOS系统中安装软件提示缺少文件的问题

如何冻结仅在虚拟环境中安装的软件包?

如何在 Wix 合并模块中安装字体