Dan*_*e P 6 swift swift-package-manager
假设我在Package.swift下面有这样的,并且SomePackage从依赖关系中产生警告swift build.
// swift-tools-version:4.0
import PackageDescription
let package = Package(
name: "my-app",
dependencies: [
.package(url: "https://some-package.git", .upToNextMajor(from: "1.0"))
],
targets: [
.target(name: "Run", dependencies: ["SomePackage"]
]
)
Run Code Online (Sandbox Code Playgroud)
如何从依赖项中抑制这些警告,但保留那些来自我的代码的警告?
使用 Swift Tools 版本 5,您可以在包文件中定义编译器标志(请参阅https://docs.swift.org/package-manager/PackageDescription/PackageDescription.html#swiftsetting)。以下是在构建期间抑制编译器警告的示例Package.swift:
// swift-tools-version:5.0
import PackageDescription
let package = Package(
name: "Antlr4",
products: [
.library(
name: "Antlr4",
targets: ["Antlr4"]),
],
targets: [
.target(
name: "Antlr4",
dependencies: [],
swiftSettings: [
.unsafeFlags(["-suppress-warnings"]),
]),
.testTarget(
name: "Antlr4Tests",
dependencies: ["Antlr4"]),
]
)
Run Code Online (Sandbox Code Playgroud)
要仅在外来代码中抑制警告,您应该将代码分成两个包。
小智 5
对于 Objective-C 模块,您可以使用以下命令禁用所有警告:
cSettings: [
.unsafeFlags(["-w"])
]
Run Code Online (Sandbox Code Playgroud)
小智 -3
我不知道如何仅抑制依赖项警告,但可以通过传递此选项来抑制构建期间的所有警告:-Xswiftc -suppress-warnings。通话看起来像
swift build -Xswiftc -suppress-warnings
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
554 次 |
| 最近记录: |