如何将NodeJS和node_modules添加到Mac App

我正在编写一个当前依赖于节点二进制文件的Mac应用程序。 这种方法的主要不便之处在于,由于App Store限制,用户需要授予对节点二进制文件以及全局node_modules文件夹的访问权限。

所以我的想法是将节点二进制以及所有需要的节点模块添加到Mac应用程序,但我不知道如何做到这一点。 我知道你可以添加二进制文件,然后像这样使用它:

[task setLaunchPath:[[NSBundle mainBundle] pathForResource:@"node" ofType:@""]]; 

我现在的问题是,如何告诉节点关于自定义node_modules位置?

我在OS X App Store上发布了一个依赖于节点的应用程序。 我最终做的是直接在我的app目录中包含节点。 节点将爬行文件系统,并使用它可以find的第一个node_modules,所以你不必configuration任何东西。

这是我最终使用的结构:

在这里输入图像描述