无法在 Swift Docker 5.1.3 中使用 'NSKeyValueObservation'
Unable to use 'NSKeyValueObservation' in Swift Docker 5.1.3
我正在尝试在 Swift 可执行文件中使用 NSKeyValueObservation 我在 Docker 运行。我正在使用以下 swift 版本:5.1.3
我剥离了所有内容,我只是在 main.swift 中声明:
var observer: NSKeyValueObservation?
返回的错误是:
/package/Sources/TestPackage/main.swift:30:19: error: use of undeclared type 'NSKeyValueObservation'
var observer: NSKeyValueObservation?
由于错误不会在本地发生,我的直觉是 Docker 是 运行 linux 而 linux 不知道 NSKeyValueObservation 但这不是记录在任何地方。如果是这样,我该如何解决这个问题?
相关Docker版本信息为:
Client: Docker Engine - Community
Version: 19.03.5
API version: 1.40
Go version: go1.12.12
Git commit: 633a0ea
Built: Wed Nov 13 07:22:34 2019
OS/Arch: darwin/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.5
API version: 1.40 (minimum version 1.12)
Go version: go1.12.12
Git commit: 633a0ea
Built: Wed Nov 13 07:29:19 2019
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.2.10
GitCommit: b34a5c8af56e510852c35414db4c1f4fa6172339
runc:
Version: 1.0.0-rc8+dev
GitCommit: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
docker-init:
Version: 0.18.0
GitCommit: fec3683
你的预感是正确的。 NSKeyValueObservation
依赖于 Objective-C 运行时,它在非 Darwin 平台上不存在。您将需要使用替代方案,例如 Rx 的某种风格。
我正在尝试在 Swift 可执行文件中使用 NSKeyValueObservation 我在 Docker 运行。我正在使用以下 swift 版本:5.1.3
我剥离了所有内容,我只是在 main.swift 中声明:
var observer: NSKeyValueObservation?
返回的错误是:
/package/Sources/TestPackage/main.swift:30:19: error: use of undeclared type 'NSKeyValueObservation'
var observer: NSKeyValueObservation?
由于错误不会在本地发生,我的直觉是 Docker 是 运行 linux 而 linux 不知道 NSKeyValueObservation 但这不是记录在任何地方。如果是这样,我该如何解决这个问题?
相关Docker版本信息为:
Client: Docker Engine - Community
Version: 19.03.5
API version: 1.40
Go version: go1.12.12
Git commit: 633a0ea
Built: Wed Nov 13 07:22:34 2019
OS/Arch: darwin/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.5
API version: 1.40 (minimum version 1.12)
Go version: go1.12.12
Git commit: 633a0ea
Built: Wed Nov 13 07:29:19 2019
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.2.10
GitCommit: b34a5c8af56e510852c35414db4c1f4fa6172339
runc:
Version: 1.0.0-rc8+dev
GitCommit: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
docker-init:
Version: 0.18.0
GitCommit: fec3683
你的预感是正确的。 NSKeyValueObservation
依赖于 Objective-C 运行时,它在非 Darwin 平台上不存在。您将需要使用替代方案,例如 Rx 的某种风格。