我很好奇Julia是否支持与Python +虚拟环境相同的工作流程。
在Python中,我可以从终端执行以下操作:
$ python -m venv venv
$ source venv/bin/activate
(venv) $ pip install myFavPackage
(venv) $ python src/myFavScript.py
Julia可以通过其REPL使用虚拟环境,如下所示:
(@v1.5) pkg> activate .
(myFavProject) pkg> add myFavPackage
julia> include("src/myFavScript.jl")
但是如果我运行前两行(将所有依赖项添加到Project.toml
和Manifest.toml
文件中),然后跳到终端并运行
$ julia src/myFavScript.jl
然后无法识别我安装的软件包:
ERROR: LoadError: ArgumentError: Package myFavPackage not found in current path:
- Run `import Pkg; Pkg.add("myFavPackage")` to install the myFavPackage package.
这是否意味着我必须全局安装软件包才能从终端运行Julia脚本?如果没有,该如何强制终端使用本地依赖项?
答案 0 :(得分:3)
您可以使用--project
标志,即
$ julia --project=path/to/project src/myFavScript.jl
如果您位于正确的文件夹中,则只需省略路径即可,即
$ julia --project src/myFavScript.jl
最后,如果您希望默认情况下执行此操作,则可以将JULIA_PROJECT
环境变量设置为@.
,这等效于始终以--project
开头Julia。