Swift程序包管理器-未加载语音依赖项
我在为我的项目创建Swift包时遇到了一个问题。我有CocoaPods和Travis CI正在运行,两者都工作得很顺利,但是我现在也打算通过Swift包经理提供该项目。这就是我遇到问题的地方。我的包文件如下所示:Swift程序包管理器-未加载语音依赖项,swift,swift4,swift4.2,swift-package-manager,Swift,Swift4,Swift4.2,Swift Package Manager,我在为我的项目创建Swift包时遇到了一个问题。我有CocoaPods和Travis CI正在运行,两者都工作得很顺利,但是我现在也打算通过Swift包经理提供该项目。这就是我遇到问题的地方。我的包文件如下所示: // swift-tools-version:4.2 // The swift-tools-version declares the minimum version of Swift required to build this package. import PackageDesc
// swift-tools-version:4.2
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
let package = Package(
name: "Voxosonus",
products: [
// Products define the executables and libraries produced by a package, and make them visible to other packages.
.library(
name: "Voxosonus",
targets: ["Voxosonus"]),
],
targets: [
// Targets are the basic building blocks of a package. A target can define a module or a test suite.
// Targets can depend on other targets in this package, and on products in packages which this package depends on.
.target(
name: "Voxosonus",
path: "Voxosonus"),
.testTarget(
name: "VoxosonusTests",
dependencies: ["Voxosonus"],
path: "VoxosonusTests"),
]
)
但是,当我运行swift build
时,我会遇到以下问题:
/Users/<hidden>/Documents/Projecten/Voxosonus/Voxosonus/SpeechRecognizer.swift:8:8: error: no such module 'Speech'
import Speech
/Users//Documents/Projecten/Voxosonus/Voxosonus/SpeechRecognizer.swift:8:8:错误:没有这样的模块“Speech”
重要讲话
我的问题是-为什么找不到“语音”模块?这是苹果本身的核心功能,到目前为止,互联网让我一点也不聪明。有关该项目的一些细节:
构建目标:iOS 12.x
马科斯:10.14
Swift版本:4.2.1如中所述,您还不能定义Swift包的目标平台:
目前还没有明确支持依赖UIKit,
AppKit等,尽管导入这些模块应该可以正常工作
出现在正确的系统位置。我们将增加明确的支持
对于将来的系统依赖性。请注意,此时
Package Manager不支持iOS、watchOS或tvOS平台
因此,当您尝试使用Xcode(或使用swift build
命令)构建库时,编译器无法找到语音模块,因为它仅在iOS 10+上可用
您可以检查此项(swift package manager ios)它提供了一个ruby脚本,可以通过添加必要的信息来修改Swift软件包管理器生成的
xcodeproj
,以便为iOS平台进行构建。可能Voxosonus
软件包不是用Swift 4.2编写的。除非是因为如果不是这样,Travis CI构建和CocoaPods将无法工作,否则它们将无法工作做同样在Voxosonus.xcodeproj文件中,swift编译器被设置为版本4.2。谢谢-我会看看这个解决方案,尽管在我看来,有了这些信息,Swift软件包管理器和它的支持是可以等待可预见的未来的东西,如果是这样的话,那么我现在就不谈了。是的,目前SPM主要是为Linux支持而设计的。我希望它在下一个版本中支持iOS。。。