我有一个具有以下结构的 Package.swift 文件
var package = Package(
name: "MyProject",
targets: [
Target(name: "MyProject")
],
dependencies: [],
exclude: ["Exclude"]
)
#if DEBUG
package.dependencies.append(Package.Dependency.Package(url: "Dependency-One.git", majorVersion: 0, minor: 0))
#else
package.dependencies.append(Package.Dependency.Package(url: "Dependency-Two.git", majorVersion: 0, minor: 0))
#endif
当我使用以下任何一项构建它时:
swift build
swift build -c release
swift build -c debug
swift build -c RELEASE
swift build -c DEBUG
它仍然总是下载 Dependency-Two.git。如果我在上述所有内容前面加上
rm -rf .build/ && rm -rf Packages/
所以我不认为这是因为它重用了一些缓存。有可能在这里做我想做的事情吗?
仍然不可用。我的解决方法是创建多个 Package.swift 文件,名称如下Package-DEBUG.swift
并让脚本将相应的脚本复制到Package.swift
在构建时。
这确实是一种无需动脑筋的解决方法,SPM 开发人员确实需要实现命令行标志。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)