Julia 从 github 添加包

ima*_*tha 16 julia

我想从 github 安装以下包。我尝试在我的环境中使用以下命令来安装

(nlpEnvJl) pkg> add "https://github.com/yeesian/LeafletJS.jl/tree/master/src"
Run Code Online (Sandbox Code Playgroud)

但我收到以下错误,

错误:在包中找不到项目文件,https://github.com/yeesian/LeafletJS.jl可能subdir需要指定

关于如何安装有什么想法吗?我必须先将其克隆到本地存储库吗?如果是这样我如何从本地路径安装?

干杯 提前致谢

小智 18

你不需要本地安装,但是你必须输入官方的 URL 来克隆它。

add https://github.com/yeesian/LeafletJS.jl.git
Run Code Online (Sandbox Code Playgroud)

有时,如果包已经注册,而你只想要 github 中的主版本,你可以直接这样做

add PackageName#main
Run Code Online (Sandbox Code Playgroud)

  • 如果您想要 git repo 的子文件夹(例如,您想要包含来自 https://github.com/JuliaPlots/Makie.jl/tree/master/CairoMakie 的 CairoMakie),请在冒号后面添加子文件夹。`添加 https://github.com/JuliaPlots/Makie.jl#master:CairoMakie` (2认同)

Osk*_*ar 8

您必须在本地克隆它,然后使用Pkg.generate才能将其作为包导入。它需要Project.toml添加一个文件。

因此,您必须:

$ git clone git@github.com:yeesian/LeafletJS.jl.git                                                                                                                                                                                       
Cloning into 'LeafletJS.jl'...
remote: Enumerating objects: 59, done.
remote: Total 59 (delta 0), reused 0 (delta 0), pack-reused 59
Receiving objects: 100% (59/59), 14.83 KiB | 197.00 KiB/s, done.
Resolving deltas: 100% (22/22), done.
$ julia  
 
(@v1.5) pkg> generate LeafletJS
 Generating  project LeafletJS:
    LeafletJS/Project.toml
    LeafletJS/src/LeafletJS.jl

$ cp -r LeafletJS.jl/* LeafletJS/.                                                                                                                                                                                                        
$ cd LeafletJS                                                                                                                                                                                                                            
LeafletJS $ julia  

(@v1.5) pkg> dev .
[ Info: Resolving package identifier `.` as a directory at `/tmp/jl_temp/LeafletJS/`.
Path `.` exists and looks like the correct package. Using existing path.
  Resolving package versions...
Updating `~/.julia/environments/v1.5/Project.toml`
  [b1ddfcb9] + LeafletJS v0.1.0 `../../../../../tmp/jl_temp/LeafletJS`
Updating `~/.julia/environments/v1.5/Manifest.toml`
  [b1ddfcb9] + LeafletJS v0.1.0 `../../../../../tmp/jl_temp/LeafletJS`
Run Code Online (Sandbox Code Playgroud)