假设在朱莉娅控制台中我做了
using Gadfly
然后意识到我实际上想要使用不同的绘图命令
using Winston
似乎plot()
仍将使用Gadfly版本。有没有办法停止使用Gadfly?
using !Gadfly
!using Gadfly
unuse Gadfly
那样的东西?
答案 0 :(得分:7)
正如其他人所指出的那样,你无法在Julia中卸载软件包。唯一的方法是重启Julia repl。但是,如果您想使用套餐中的特定功能,可以Winston.plot()
或Gadfly.plot()
。因此,将确保您从所需的命名空间中使用正确的功能。
答案 1 :(得分:7)
正如@Jubobs链接中所提到的,目前没有办法选择性地停止使用包,或者有选择地从REPL中删除定义(如果您熟悉它,则类似于Matlab的clear
命令) 。所以简短的回答是否定的。
但是,您可以使用Gadfly.plot()
或Winston.plot()
来引用特定模块中的功能。如果您已编写代码,这不能为您提供问题的解决方案,但它仍然是未来工作的选项。
有workspace()
命令,但会从Main
模块中移除所有内容,并会导入新的Julia环境。 你将失去你定义的所有函数和变量......所以明智地使用它
正如@Matt B所指出的,你实际上输掉你的函数和变量。它们被移动到名为LastMain
的模块。因此,如果我定义了一个名为myfunc()
的函数,并且我调用了workspace()
,那么尝试在REPL上调用myfunc()
将导致UndefVarError
。但是,您仍然可以通过调用LastMain.myfunc()
来访问此功能。在您致电workspace()
之前,在REPL中定义的任何内容都是如此。