【问题标题】:julia not finding "standard" packages (or LOAD_PATH)?朱莉娅没有找到“标准”包(或 LOAD_PATH)?
【发布时间】:2021-10-11 20:38:22
【问题描述】:

在 Ubuntu 20.04 [Windwos 10 WSL2] 上 [从 1.5.3] 升级到 Julia 1.6.3 信息:从 julia github repo 构建而不是通过 apt
我的本地克隆位于 Windows 文件系统上,我使用 bash shell 导航到那里,以从该 Ubuntu bash shell 中开始构建过程。 在~(或任何其他地方)开始julia 之后,由于包不在路径上,它会抛出错误。 所以我完全删除了~/.julia/config/startup.jl 脚本,因为我有很多using this and that 在那里查看它并且 在 [启动它并] 导入 Pkg

时,我在 julia 提示符中得到以下内容
julia> import Pkg
ERROR: ArgumentError: Package Pkg not found in current path:
- Run `import Pkg; Pkg.add("Pkg")` to install the Pkg package.

Stacktrace:
 [1] require(into::Module, mod::Symbol)
   @ Base ./loading.jl:893
julia> 

检查LOAD_PATH 在我看来一切都很正常

shell> echo $LOAD_PATH
@ @v#.# @stdlib

shell>

最后的信息

> whereis julia 
julia: /etc/julia /usr/local/bin/julia
> which julia
/usr/local/bin/julia
julia> Base.load_path()
2-element Vector{String}:
 "/home/gwd/.julia/environments/v1.6/Project.toml"
 "/usr/local/bin/julia-1.6.3/share/julia/stdlib/v1.6"
julia> versioninfo()
Julia Version 1.6.3
Commit ae8452a9e0 (2021-09-23 17:34 UTC)
Platform Info:
  OS: Linux (x86_64-linux-gnu)
  CPU: Intel(R) Core(TM) i7-1065G7 CPU @ 1.30GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-11.0.1 (ORCJIT, icelake-client)

任何想法 - 这里有什么问题? 我确实发现了

cat .julia/environments/v1.6/Project.toml

生产

[deps]
AlphaVantage = "6348297c-a006-11e8-3a05-9bbf8830fd7b"
Arrow = "69666777-d1a9-59fb-9406-91d4454c9d45"
BenchmarkTools = "6e4b80f9-dd63-53aa-95a3-0cdb28fa8baf"
CSV = "336ed68f-0bac-5ca0-87d4-7b16caf5d00b"
CoinbasePro = "3632ec16-99db-4259-aa88-30b9105699f8"
Conda = "8f4d0f93-b110-5947-807f-2305c1781a2d"
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
DataFramesMeta = "1313f7d8-7da2-5740-9ea0-a2ca25f37964"
DataStructures = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
DocumenterTools = "35a29f4d-8980-5a13-9543-d66fff28ecb8"
Flux = "587475ba-b771-5e3f-ad9e-33799f191a9c"
Formatting = "59287772-0a20-5a39-b81b-1366585eb4c0"
FreqTables = "da1fdf0e-e0ff-5433-a45f-9bb5ff651cb1"
GLM = "38e38edf-8417-5370-95a0-9cbb8c7f171a"
HTTP = "cd3eb016-35fb-5094-929b-558a96fad6f3"
IJulia = "7073ff75-c697-5162-941a-fcdaad2a7d2a"
JuMP = "4076af6c-e467-56ae-b986-b466b2749572"
LanguageServer = "2b0e0bc5-e4fd-59b4-8912-456d1b03d8d7"
OhMyREPL = "5fb14364-9ced-5910-84b2-373655c76a03"
Pipe = "b98c9c47-44ae-5843-9183-064241ee97a0"
PlotThemes = "ccf2f8ad-2431-5c83-bf29-c5338b663b6a"
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
Pluto = "c3e4b0f8-55cb-11ea-2926-15256bba5781"
PyCall = "438e738f-606a-5dbb-bf0a-cddfbfd45ab0"
PyPlot = "d330b81b-6aea-500a-939a-2ce795aea3ee"
RCall = "6f49c342-dc21-5d91-9882-a32aef131414"
RDatasets = "ce6b1742-4840-55fa-b093-852dadbb1d8b"
Revise = "295af30f-e4ad-537b-8983-00126c2a3abe"
StaticLint = "b3cc710f-9c33-5bdb-a03d-a94903873e97"
StatsBase = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91"
StatsPlots = "f3b207a7-027a-5e70-b257-86293d7955fd"
SymbolServer = "cf896787-08d5-524d-9de7-132aaa0cb996"
Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d"

以及.julia/environments/v1.6//Manifes.toml中的这个

...
[[Pkg]]
deps = ["Artifacts", "Dates", "Downloads", "LibGit2", "Libdl", "Logging", "Markdown", "Printf", "REPL", "Random", "SHA", "Serialization", "TOML", "Tar", "UUIDs", "p7zip_jll"]
uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
...

那么为什么Pkg 突然不在Project.toml 中-或者我应该在其他地方寻找它-如果Pkg 不可用,我应该如何添加它? :-(

会不会是安装有问题?

【问题讨论】:

  • 你能运行Base.load_path()并检查它显示的实际目录,它们是否存在,最后一个(stdlib)是否包含Pkg目录?
  • 运行 versioninfo() 还可以帮助找出环境变量发生了什么
  • 将更新以上信息...

标签: julia startup load-path


【解决方案1】:

好吧,我学到的(到目前为止)是,将 WSL2 文件系统与底层 Windows 文件系统混合会分别导致“错误”构建,然后产生“有趣”的行为/错误。 所以人们不应该太急切或试验性地测试所有可以想象的地方组合(意味着路径和文件夹)朱莉娅可以驻留或构建:-)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-27
    • 2014-04-26
    • 1970-01-01
    • 1970-01-01
    • 2014-02-04
    • 2014-12-31
    • 2017-01-15
    • 2016-02-18
    相关资源
    最近更新 更多