答案 0 :(得分:5)
如果您尝试构建库/框架,但在目标的根目录中还有一个main.swift
文件,则经常遇到此问题,如下所示:
main.swift
文件的存在使SwiftPM认为您正在尝试构建命令行工具,因此抱怨产生了不必要的(名称重复)库。
对于在iOS,macOS,tvOS或watchOS上使用Xcode动态框架模板初始化的项目中不会发生此警告,可能会造成混淆。
答案 1 :(得分:1)
就我而言,这是因为我在 products
部分和 Package
中的名称相同,例如
let package = Package(
name: "Example",
products: [
.library(
name: "Example",
targets: ["Example"]),
],
)
出于某种原因,这似乎是 swift init
的默认行为。我删除了 .library
条目,警告消失了。