在用于分发的 MacRuby 应用程序中,如何启动使用 macruby 调用 Ruby 脚本的 NSTask?
我有一个 MacRuby 应用程序,在应用程序启动后,我想使用 NSTask 启动第二个进程。第二个进程是与应用程序捆绑在一起的 Ruby 脚本。我想使用编译到应用程序包中的 MacRuby macruby 解释器来启动它。我怎样才能做到这一点?
I have a MacRuby app, and after the app launches, I would like to launch a second process using an NSTask. The second process is a Ruby script bundled with the app. I would like to launch it using the MacRuby macruby interpreter that gets compiled into the app bundle. How can I do that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
首先,从ruby脚本中删除.rb扩展名,否则如果使用macruby_deploy编译macruby项目,它将被编译为rbo文件。脚本文件应将其作为第一行:
确保将脚本复制到 Resources 文件夹。
然后创建并调用 NSTask:
First, remove the .rb extension from the ruby script, otherwise if you compile the macruby project using macruby_deploy, it will be compiled to rbo file. The script file should have this as its first line:
Make sure the script will be copied to Resources folder.
Then create and call a NSTask:
那么,你尝试过只调用 NSTask 吗?
然后在 Xcode 中单击以确保 script.rb 在执行期间就位。
Well, have you tried just calling NSTask?
Then click around in Xcode to make sure that script.rb is in place during execution.