从Swift命令行工具调用xcodebuild失败

时间:2015-07-16 12:22:11

标签: xcode swift cocoa xcodebuild nstask

我正在编写简单的swift命令行工具应用程序,它可以自动完成我的一些iOS开发工作。一切都在工作,除了一件事 - 调用xcodebuild脚本。

我的方法如下:

func runTest(deviceName: String, os: String) {
        killAllSimulators()
        let sdk = "iphonesimulator"
        let destination = "platform=iOS Simulator,name=" + deviceName + ",OS=" + os
        let arguments = ["-workspace", workspace, "-scheme", scheme, "-sdk", sdk, "-destination", destination, "test"]
        executor.executeCommand("xcodebuild", arguments: arguments)
    }

deviceName等于" iPhone 4s",os等于" 9.0",工作空间和方案变量已正确设置。

我的执行命令具有简单的实现:

func executeCommand(command: String, arguments: [String]) -> NSString?  {
        _ = NSProcessInfo.processInfo().processIdentifier
        let pipe = NSPipe()
        let fileHandle = pipe.fileHandleForReading

        let task = NSTask()
        task.launchPath = "/usr/bin/" + command
        task.arguments = arguments
        task.standardOutput = pipe

        task.launch()
        let data = fileHandle.readDataToEndOfFile()
        fileHandle.closeFile()

        return NSString(data: data, encoding: NSUTF8StringEncoding)
    }

我收到测试失败的错误,因为cdtool无法编译。这非常奇怪,因为从终端调用的脚本完全相同..

有什么想法吗?

0 个答案:

没有答案