如何将 .jar 文件作为资源包含在 XCode 中,并由 NSTask 执行?

发布于 2024-11-14 11:43:02 字数 627 浏览 3 评论 0原文

我目前正在使用 MacRuby 和 XCode 为 CraftBukkit 编写 Mac 原生界面。

现在,我正在使用 NSTask 和 NSPipe 来运行 Minecraft 的 Java 服务器:

buk.setLaunchPath("/usr/bin/java")
buk.setArguments([
  "-Xmx1024M",
  "-Xincgc",
  "-jar",
  "#{NSBundle.mainBundle.pathForResource 'bukkit', :ofType => 'jar'}",
  "nogui"
])

buk.launch

但是,我无法将 bukkit.jar 添加为资源!它只是不会构建。我可以轻松包含图像,并且 NSBundle 可以工作。

#{NSBundle.mainBundle.pathForResource 'bukkit', :ofType => 'jar'} 不返回任何内容(因为该文件不包含)。

如何将 bukkit.jar 作为资源包含到 sample.app/Contents/Resources 中?

谢谢!

I'm currently programming a Mac-native interface for CraftBukkit using MacRuby and XCode.

Right now, I am using NSTask and NSPipe to run Minecraft's Java server:

buk.setLaunchPath("/usr/bin/java")
buk.setArguments([
  "-Xmx1024M",
  "-Xincgc",
  "-jar",
  "#{NSBundle.mainBundle.pathForResource 'bukkit', :ofType => 'jar'}",
  "nogui"
])

buk.launch

However, I cannot add bukkit.jar as a Resource! It just won't build. I can include images easily, and NSBundle works.

#{NSBundle.mainBundle.pathForResource 'bukkit', :ofType => 'jar'} doesn't return anything (because the file does not include).

How can I include bukkit.jar as a Resource to be built into sample.app/Contents/Resources?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

许久 2024-11-21 11:43:02

您必须将 jar 文件放在 Resources/Java 下的 mainBundle 中。为此,添加一个类型为“Java Resources”的新副本文件构建阶段,然后将 jar 文件拖放到此处。

然后调用该方法:

NSBundle.mainBundle.pathForResource 'bukkit', 
                         :ofType => 'jar', 
                    :inDirectory => "Java"

请注意,启动单独的进程可能会导致您的应用程序在 Mac App Store 上被接受。

You have to put your jar file in the mainBundle under Resources/Java. To do that, adda a new copy files build phase of type "Java Resources", then drag and drop your jar file here.

Then call the method:

NSBundle.mainBundle.pathForResource 'bukkit', 
                         :ofType => 'jar', 
                    :inDirectory => "Java"

Notice that launching a separate process could be an issue in having your application accepted on the Mac App Store.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文