Artifact
從 Julia 1.6 開始,artifact 支援已從 Pkg.jl
移至 Julia 本身。在這裡新增適當的文件之前,您可以在 https://julialang.github.io/Pkg.jl/v1/artifacts/ 的 Pkg.jl
手冊中進一步了解 artifact。
Julia 的 artifact API 至少需要 Julia 1.6。在 Julia 1.3 到 1.5 版本中,您可以改用 Pkg.Artifacts
。
Artifacts.artifact_meta
— 函數artifact_meta(name::String, artifacts_toml::String;
platform::AbstractPlatform = HostPlatform(),
pkg_uuid::Union{Base.UUID,Nothing}=nothing)
取得儲存在給定的 (Julia)Artifacts.toml
檔案中的特定人工製品(以名稱識別)的元資料。如果人工製品是特定於平台的,請使用 platform
選擇最合適的對應。如果找不到,則傳回 nothing
。
此函數至少需要 Julia 1.3。
Artifacts.artifact_hash
— 函數artifact_hash(name::String, artifacts_toml::String;
platform::AbstractPlatform = HostPlatform())
artifact_meta()
的薄封裝,用於傳回指定、平台折疊人工製品的雜湊。如果找不到對應,則傳回 nothing
。
此函數至少需要 Julia 1.3。
Artifacts.find_artifacts_toml
— 函數find_artifacts_toml(path::String)
提供 .jl
檔案的路徑(例如巨集環境中 __source__.file
傳回的路徑),在包含專案中(如果存在)尋找包含的 (Julia)Artifacts.toml
,否則傳回 nothing
。
此函數至少需要 Julia 1.3。
Artifacts.@artifact_str
— 巨集macro artifact_str(name)
傳回人工製品的磁碟路徑。自動在專案的 (Julia)Artifacts.toml
檔案中按名稱尋找人工製品。如果找不到要求的人工製品,則擲回錯誤。如果在 REPL 中執行,則從目前目錄開始搜尋 toml 檔案,請參閱 find_artifacts_toml()
以取得更多資訊。
如果人工製品標記為「lazy」,且套件已定義 using LazyArtifacts
,則當此巨集首次嘗試計算路徑時,人工製品會透過 Pkg
按需下載。然後,檔案將會保留在本地端以供稍後使用。
如果 name
包含正斜線或反斜線,第一個斜線之後的所有元素將被視為路徑名稱,用於對人工製品進行索引,從而允許使用一行輕鬆訪問人工製品中的單個檔案/目錄。範例
ffmpeg_path = @artifact"FFMPEG/bin/ffmpeg"
此巨集至少需要 Julia 1.3。
斜線索引至少需要 Julia 1.6。