NSSavePanel和NSOpenPanel在Catalina 10.15上不起作用,因为它像沙盒应用程序一样处于进程外,有什么办法可以解决此问题?

问题描述

在Catalina上使用NSSavepanel构造函数或静态对象会给出错误

认07:45:15.193902-0800日食+ [NSxpcSharedListener endpointForReply:withListenerName:]:尝试获取侦听器com.apple.view-bridge的端点时发生错误:连接中断。

那么应该使用什么api / hack以便NSPanel可以正确地在catalina 10.15上使用?

解决方法

我今天在基于 Kickstart4J 的应用程序中遇到了同样的问题。

当 Kickstart4J 安装应该用于启动应用程序的 JRE 时,它会将 java 可执行文件的权限更改为 rwxr--r--。这种改变总是以错误告终。

通过稍后将 java 可执行文件的权限更改为 rwxr-xr-x 解决了问题。我仍然不知道为什么这会起作用,对此行为的解释会很好。