【问题标题】:Create Golang executable that doesn't open a terminal window on OSX?创建不会在 OSX 上打开终端窗口的 Golang 可执行文件?
【发布时间】:2015-08-20 05:39:39
【问题描述】:

如何创建一个不会在 OSX 上打开终端窗口的 Golang 可执行文件?

对于 Windows,这里有一个类似的问题。 How do I create an executable from Golang that doesn't open a command (cmd) window when run?

【问题讨论】:

  • 我相信重要的是如何启动该可执行文件(因为 MacOSX 是 Unix 或 POSIX 系统)。很有可能,如果您将其作为cron 工作启动,它就不需要任何终端。如果您在命令行上启动它,在现有终端中,它可能不会打开新的终端窗口。
  • @BasileStarynkevitch 在 Finder 中双击可执行文件时会怎样?那么它应该打开一个终端窗口吗?
  • 另见this
  • 如果应用程序具有使用 Electron 构建的 GUI,作为守护进程运行是否合适?
  • 我不知道(因为我从未为 MacOSX 编写过代码)。在 POSIX 系统上,程序是通过运行execve 函数来启动的——它通常是一个syscall——,它没有理由启动一个窗口。 Finder 只是一个图形用户界面,你可以避免它。

标签: macos go


【解决方案1】:

可能,您只需将您的可执行文件打包到application bundle 中。它只是一个带有.app 扩展名的目录,其中存储了可执行文件、资源和配置(plist 文件)。

您可以在developer.apple.com 阅读所有规格。您还可以打开现有应用的捆绑包并查看其中的内容。

【讨论】:

    猜你喜欢
    • 2019-02-17
    • 2017-01-09
    • 1970-01-01
    • 1970-01-01
    • 2014-06-08
    • 1970-01-01
    • 2014-05-27
    • 2011-11-13
    • 1970-01-01
    相关资源
    最近更新 更多