为什么我的 Swift Process() 启动路径会吐出"启动路径无法访问"?


Button(action: {
let installNano = Process()
installNano.launchPath = "/opt/pkg/bin/pkgin"
installNano.launch()
}) {
Text("Run pkgin")
}

我正在尝试这样做,以便当按下此按钮时,它将启动 pkgin 二进制文件,并且当运行登录二进制文件时,它应该显示此帮助页面:

Usage: pkgin [-cdfFhlnPtvVy] command [package ...]
Commands and shortcuts:
list                (ls  ) - List installed local packages
avail               (av  ) - List all available remote packages
search              (se  ) - Search for a remote package
install             (in  ) - Install or upgrade packages
update              (up  ) - Refresh local and remote package lists
upgrade             (ug  ) - Upgrade only packages marked with the keep flag
full-upgrade        (fug ) - Upgrade all packages
remove              (rm  ) - Remove packages and any dependent packages
keep                (ke  ) - Mark packages that should be kept
unkeep              (uk  ) - Mark packages that can be autoremoved
export              (ex  ) - Display PKGPATH for all keep packages
import              (im  ) - Import keep package list from file
show-keep           (sk  ) - Display keep packages
show-no-keep        (snk ) - Display autoremovable packages
autoremove          (ar  ) - Remove orphaned dependencies
clean               (cl  ) - Remove downloaded package files
show-deps           (sd  ) - List remote package direct dependencies
show-full-deps      (sfd ) - List remote package full dependencies
show-rev-deps       (srd ) - List local package reverse dependencies
provides            (prov) - Show which shared libraries a package provides
requires            (req ) - Show which shared libraries a package requires
show-category       (sc  ) - List all packages belonging to a category
show-pkg-category   (spc ) - Show categories a package belongs to
show-all-categories (sac ) - List all known categories
pkg-content         (pc  ) - Show remote package content
pkg-descr           (pd  ) - Show remote package long-description
pkg-build-defs      (pbd ) - Show remote package build definitions
stats               (st  ) - Show local and remote package statistics

但它在 Xcode 的All Output窗格中吐出此错误:

2019-09-16 18:00:56.152377-0700 Jupiter[7507:210600] [General] launch path not accessible
2019-09-16 18:00:56.156127-0700 Jupiter[7507:210600] [General] (
0   CoreFoundation                      0x00007fff2eb49a43 __exceptionPreprocess + 250
1   libobjc.A.dylib                     0x00007fff64daf8f3 objc_exception_throw + 48
2   Foundation                          0x00007fff3122d681 -[NSConcreteTask launchWithDictionary:error:] + 5234
3   Jupiter                             0x0000000100001dcd $s7Jupiter11ContentViewV4bodyQrvg7SwiftUI05TupleC0VyAE6ButtonVyAE4TextVG_ALtGyXEfU_yycfU_ + 141
4   SwiftUI                             0x00007fff3bc2fd09 $s7SwiftUI33PrimitiveButtonStyleConfigurationV7triggeryyF + 25
5   SwiftUI                             0x00007fff3c07f510 $s7SwiftUI33PrimitiveButtonStyleConfigurationV7triggeryyFTA + 16
6   SwiftUI                             0x00007fff3c07eeb9 $s7SwiftUI11Coordinator33_9FEBA96B0BC70E1682E82D239F242E73LLC14didPressButtonyySo8NSButtonCF + 25
7   SwiftUI                             0x00007fff3c07eef6 $s7SwiftUI11Coordinator33_9FEBA96B0BC70E1682E82D239F242E73LLC14didPressButtonyySo8NSButtonCFTo + 38
8   AppKit                              0x00007fff2bf74434 -[NSApplication(NSResponder) sendAction:to:from:] + 299
9   AppKit                              0x00007fff2bfd3a30 -[NSControl sendAction:to:] + 86
10  AppKit                              0x00007fff2bfd3962 __26-[NSCell _sendActionFrom:]_block_invoke + 136
11  AppKit                              0x00007fff2bfd3864 -[NSCell _sendActionFrom:] + 171
12  AppKit                              0x00007fff2bffbb17 -[NSButtonCell _sendActionFrom:] + 96
13  AppKit                              0x00007fff2c3652a4 NSControlTrackMouse + 1745
14  AppKit                              0x00007fff2bfd227c -[NSCell trackMouse:inRect:ofView:untilMouseUp:] + 130
15  AppKit                              0x00007fff2bffb880 -[NSButtonCell trackMouse:inRect:ofView:untilMouseUp:] + 691
16  AppKit                              0x00007fff2bfd1512 -[NSControl mouseDown:] + 748
17  AppKit                              0x00007fff2bec4049 -[NSWindow(NSEventRouting) _handleMouseDownEvent:isDelayedEvent:] + 4907
18  AppKit                              0x00007fff2be075d8 -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEvent:] + 2612
19  AppKit                              0x00007fff2be06961 -[NSWindow(NSEventRouting) sendEvent:] + 349
20  AppKit                              0x00007fff2bcc9b64 -[NSApplication(NSEvent) sendEvent:] + 352
21  AppKit                              0x00007fff2bcb93c6 -[NSApplication run] + 707
22  AppKit                              0x00007fff2bcab1c6 NSApplicationMain + 777
23  Jupiter                             0x0000000100005bfd main + 13
24  libdyld.dylib                       0x00007fff661022a5 start + 1
25  ???                                 0x0000000000000003 0x0 + 3
)

我不明白为什么它会给我launch path not accessible错误,因为我已经检查了我多次使用的启动路径以及路径和所有内容都在我的计算机上,所以对我来说没有任何意义为什么这不起作用。使用Command + Shift + G并输入启动路径时,它会将我带入文件夹并选择pkgin因此所有内容肯定是 100% 存在的,这让我感到困惑,因为如果一切都在那里,路径应该可以工作。如果您对为什么这不起作用有任何想法,则没有任何帮助。

我只需要转到我的应用程序的授权并将沙盒从 YES 设置为 NO 即可解决问题。

最新更新