1

我正在尝试在多用户 linux 平台上设置 ZeroBraneStudio,在调试器服务器上运行时出现问题。当一个用户启动或运行调试器服务器时,其他用户将无法使用调试器。有伴随的错误/警告消息:

单实例通信失败;可能有另一个实例正在运行,这可能会干扰调试器。

无论 ZBS 是全局安装还是安装在用户的个人 $HOME 目录中,都会发生这种情况,并导致所有调试器按钮变灰。如果我隔离调试器服务器 PID 并终止进程,那么另一个用户可以继续运行调试器,但这显然远非理想。

有一种方法可以运行提示和技巧部分中讨论的调试器的多个实例:https ://studio.zerobrane.com/doc-tips-and-tricks

** 运行多个 IDE 实例同时调试两个应用程序** 要运行多个 IDE 实例来调试两个应用程序,您可以像往常一样启动一个实例,然后使用以下命令启动第二个实例: zbstudio -cfg "singleinstance=false; debugger.port = 8173"。如果您在 OSX 上,您可能需要使用 open ZeroBraneStudio.app --args -cfg "singleinstance=false; debugger.port = 8173"。

但是这个解决方案需要用户“猜测”一个可用的端口号。有没有更好的方法来实现多个用户同时运行调试器?

4

1 回答 1

0

我尝试将 user.lua 中的 debugger.port 更改为其他一些端口,例如 8173,希望在那里启动一个单独的调试服务器,但这似乎没有帮助。

配置不同的调试器端口是避免从多个用户进行调试时发生冲突的正确方法。请注意,您还需要在尝试调试的应用程序中使用此端口号,如本常见问题解答中所述。您不需要禁用singleinstance检查,因为它仅适用于从同一用户启动的实例(至少从 1.30 版本开始,当#542实施时)。在这种情况下,我可能会考虑调整默认端口号,但仍需要在应用程序中更新它(除非您使用的是 Lua 解释器之一)。

如果这仍然不起作用,您需要提供有关不起作用的更多详细信息,并包括 IDE 中显示的“输出”窗口中的消息。

[更新] 根据您的编辑,您似乎已经在文档中找到了解决方案。我会考虑在冲突期间选择一个新号码以避免用户“猜测”,但目前该解决方案仍然可用。

于 2017-02-22T23:57:13.710 回答