我现在正在使用Julia语言,但是一些旧版本的代码已经部署在了Julia 1.4.2上。现在我想重新检查这些代码,但又不想在Julia 1.6.3(通常使用的版本)和1.4.2之间进行切换。因此,我想使用conda创建一个虚拟环境,但是现在似乎conda中没有可用的Julia 1.4.2版本。有什么建议吗?
我现在正在使用Julia语言,但是一些旧版本的代码已经部署在了Julia 1.4.2上。现在我想重新检查这些代码,但又不想在Julia 1.6.3(通常使用的版本)和1.4.2之间进行切换。因此,我想使用conda创建一个虚拟环境,但是现在似乎conda中没有可用的Julia 1.4.2版本。有什么建议吗?
如果您想同时运行多个Julia版本,基本上需要确保它们使用不同的软件包存储库位置(称为depot path)。
默认情况下,用于depot path的文件夹是~/.julia
(或Windows上的%HOMEPATH%\.julia
)。如果您开始安装多个Julia版本,则很有可能最终会出现损坏的软件包存储库。
因此,您需要设置JULIA_DEPOT_PATH
系统变量-对于每个Julia版本都要设置不同的变量(请参见https://docs.julialang.org/en/v1/manual/environment-variables/)。
例如,在我的计算机上,我有Julia 1.6.3和Julia1.7.0rc2,在启动任何一个之前,我运行以下命令(这次是Windows语法):
set JULIA_DEPOT_PATH=c:\JuliaPkg\Julia1.6.3
或者在Linux上:
export JULIA_DEPOT_PATH=/home/ubuntu/Julia1.6.3/
这使我能够将我的软件包配置保持分离。
v1.5
,因此如果多个版本使用相同的依赖路径,它们不会发生冲突。我多年来一直通过符号链接可执行文件成功地使用不同的版本。 - AntonelloJULIA_DEPOT_PATH\environments
确实有版本文件夹。然而,JULIA_DEPOT_PATH
包含的远不止这些,其他文件名会发生重叠 - 可以安装两个具有不同 JULIA_DEPOT_PATH
的 Julia 并自行检查!当它们重叠时,可能会工作,也可能不会 - 但肯定不是一个好的设计,让一个 Julia 包安装随机覆盖另一个安装的文件。 - Przemyslaw Szufel.julia/conda
,大小为数GB。这些文件夹的文件名有所重叠。你可能仍然很“幸运”,一切都能正常运作。但我个人不喜欢我的软件配置依赖于“幸运”。 - Przemyslaw SzufelJULIA_DEPOT_PATH
,因为共享同一个depot时我的软件包仓库崩溃了好几次。不过这是在早期的Julia版本中出现的问题 - 很高兴听到这个问题在此期间已经得到修复。那时每一次我都必须删除depot(也就是.julia文件夹)并从头开始重新安装所有软件包。 - Przemyslaw Szufel