【发布时间】:2015-08-03 05:08:55
【问题描述】:
我正在使用具有命令行界面的 Ionic。我想创建一个有助于执行某些命令的小型 Mac 应用程序。
在终端我cd Users/me/Desktop/Repos/ionic-project/myApp
改变后,我会例如ionic run
NSTask *task = [[NSTask alloc]init];
task.launchPath = @"/bin/bash";
task.currentDirectoryPath = @"cd Users/me/Desktop/Repos/ionic-tryouts/myApp";
task.arguments = @[@"ionic run"];
[task launch];
但这给了我“工作目录不存在”。 我已经在这里阅读了很多关于 SO 的主题。我的错误是什么?
编辑:
感谢克里斯蒂克的详细回答。我现在有这个代码:
NSTask *task = [[NSTask alloc]init];
task.launchPath = @"/usr/local/bin/ionic";
task.currentDirectoryPath = @"/Users/me/ionic-tryouts/myApp";
task.arguments = @[@"run"];
[task launch];
现在我收到以下错误:env: node: No such file or directory。我想这来自一个问题,没有找到 node.js(离子构建在节点之上)。我发现this 问题 - 缺少正确名称的符号链接可能是原因。但是为节点设置符号链接并没有帮助。有什么想法吗?
编辑2: 我给了克里斯蒂克正确的答案,尽管我最终无法让它发挥作用。我还在调查。可能是节点安装错误。
编辑3: 我看到一些帖子提到它可能会更好,如果 node 由 homebrew 重新安装,因为 homebrew 在没有 sudo 的情况下安装它。简短评论:没有帮助
【问题讨论】:
标签: objective-c node.js macos ionic nstask