Schnelles Skript aus Xcode iOS-Projekt als Erstellungsphase ausführen

Hier ist ein einfaches schnelles Skript:

#!/usr/bin/env xcrun swift

import Foundation

let task = NSTask()
task.launchPath = "/bin/echo"
task.arguments = ["farg1", "arg2"]

let pipe = NSPipe()
task.standardOutput = pipe
task.launch()

let data = pipe.fileHandleForReading.readDataToEndOfFile()
let output: String = NSString(data: data, encoding: NSUTF8StringEncoding)

print(output)

Ich habe dieses Skript als Erstellungsphase (vor der Kompilierungsphase der Quellen) in einem iOS-Projekt hinzugefügt, aber XCode konnte das Projekt nicht mit dem Fehler "undefined NSTask () ..." erstellen .

Frage ist, warum XCode nach NSTask innerhalb des iOS-Frameworks sucht (wo nicht vorhanden), um stattdessen ein schnelles Skript als Plattformskript auszuführen (wie Bash)?

Nur hinzuzufügen: Swift-Skript ist nicht in Projekt mit anderen zu kompilierenden Dateien enthalten. Es wird nur vor dem Kompilieren in die Erstellungsphase anderer Quelldateien (bei denen es sich um Objective-C-Dateien handelt) eingefügt, um sie auszuführen.

Haben Sie eine Idee, wie Sie ein benutzerdefiniertes schnelles Skript aus einem iOS XCode-Projekt ausführen können, wenn das Skript Klassen enthält, die nicht Teil des iOS-Frameworks sind?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage