web-dev-qa-db-ja.com

Swiftパッケージマネージャー-UIKitの依存関係

私のプロジェクトには次のようなPackage.Swiftがあります。

import PackageDescription

let package = Package(
    name: "ProjectName",
        dependencies: [
           .Package(url: "https://github.com/intellum/neeman.git", majorVersion: 0)
        ]
 )

実行するとSwift build次のようなエラーが発生します…

/project/Packages/WebViewController.Swift:1:8: error: no such module 'UIKit'
import UIKit
       ^

SwiftパッケージマネージャーにUIKitの場所を教えればよいですか?

19
Onato

Swift Package Managerは、OS X(またはLinux)で実行する実行可能ファイルをビルドします。UIKitはiOSのフレームワークであり、アクセスできません。

Swift Package Managerが進化するにつれて、iOS、tvOSなどがアクセス可能になる可能性があります。

2015年12月4日午後5時39分、Daniel Dunbar(@ Apple.com)は次のように書いています。

.。

現在、ホストプラットフォーム(現在はOS XまたはLinux)用にのみコンパイルしています。とりわけ、現在、ターゲットにしているSDKまたはアーキテクチャに関する知識(または選択するオプション)はありません。また、マニフェストでどのプラットフォームターゲットと互換性があるかを指定するメカニズムもありません。

15
GoZoner

条件付きコンパイルブロックを使用します。

#if canImport(UIKit)

// Code specific to platforms where UIKit is available

#endif

ソース: https://developer.Apple.com/documentation/xcode/creating_a_Swift_package_with_xcode

0
Lachtan