Я хочу запустить команду терминала из моего проекта target-c.
Когда я запускаю ее из терминала, я использую:
cd /Users/user/Desktop/project/;ant release
Теперь я использовал это в Objective-C-проект:
NSTask *task = [NSTask new];
[task setLaunchPath:@"cd /Users/user/Desktop/project/;ant"];
[task setArguments:[NSArray arrayWithObjects:@"release", nil]];
NSPipe *pipe = [NSPipe pipe];
[task setStandardOutput:pipe];
[task launch];
NSData *data = [[pipe fileHandleForReading] readDataToEndOfFile];
[task waitUntilExit];
[task release];
NSString *string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog (@"got\n%@", string);
[string release];
и после [task launch];
я получаю ошибку:
launch path not accessible
Edit
Я пытался использовать эту команду для проверки:
[task setCurrentDirectoryPath:@"/Users/user/Desktop/Czech/"];
[task setLaunchPath:@"/bin/ls"];
и это все еще дает мне предупреждение:
working directory doesn't exist.