Artifact

從 Julia 1.6 開始,artifact 支援已從 Pkg.jl 移至 Julia 本身。在這裡新增適當的文件之前,您可以在 https://julialang.github.io/Pkg.jl/v1/artifacts/Pkg.jl 手冊中進一步了解 artifact。

Julia 1.6

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

此函數至少需要 Julia 1.3。

Artifacts.artifact_hash函數
artifact_hash(name::String, artifacts_toml::String;
              platform::AbstractPlatform = HostPlatform())

artifact_meta() 的薄封裝,用於傳回指定、平台折疊人工製品的雜湊。如果找不到對應,則傳回 nothing

Julia 1.3

此函數至少需要 Julia 1.3。

Artifacts.find_artifacts_toml函數
find_artifacts_toml(path::String)

提供 .jl 檔案的路徑(例如巨集環境中 __source__.file 傳回的路徑),在包含專案中(如果存在)尋找包含的 (Julia)Artifacts.toml,否則傳回 nothing

Julia 1.3

此函數至少需要 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.3。

Julia 1.6

斜線索引至少需要 Julia 1.6。