ArtifactBundleGen (Beta版)

从 Swift Package 生成 Artifact Bundle (仅限可执行文件)

示例

# Go to Package directory. it is expeced that ArtifactBundleGen is added as command plugin in Package.swift
$ cd some-awesome-tool

# Call build command
$ swift build -c debug --arch arm64 --arch x86_64

# .build is generated

# Call command
$ swift package plugin generate-artifact-bundle --package-version 0.5.11 --executable-name some-awesome-tool --build-config debug --build-folder .build

$ ls
> some-awesome-tool.artifactbundle.zip

用法

1. 在 Package.swift 中将 ArtifactBundleGen 添加为插件

let package = Package(
    name: "SomeTools",
    products: [
        // ... some products
    ],
    dependencies: [
        // ... some dependencies
        .package(url: "https://github.com/freddi-kit/ArtifactBundleGen.git", .exact("0.0.2"))
    ],

2. 在 Shell 中构建您的产品

# Call build command
$ swift build -c debug --arch arm64 --arch x86_64

3. 调用 ArtifactBundleGen

$ swift package plugin generate-artifact-bundle --package-version {version} --executable-name {executable-name} --build-config {config} --build-folder {folder}

将会生成 {tool_name}.artifactbundle!

选项

let package = Package(
    ...
    products: [
        // here
        .executable(name: {executable-name}, targets: [...]),
    ],
可选
swift package plugin generate-artifact-bundle --package-version ... \
    --include-resource-path some-awesome-bundle.bundle \
    --include-resource-path some-awesome-image.jpg \

4. 完成!

Zip 文件已生成!

$ ls 
> {tool_name}.artifactbundle.zip

待办事项