2016-04-25 70 views
1

我想在命令行上運行一個簡單的swift程序。在命令行上用Swift導入

我有以下文件:

〜/ Calcs(計算)/ demo.swift(可執行)

#!/usr/bin/env xcrun swift 

import Foundation 
import calcs 

println(aString()) 

〜/ Calcs(計算)/ stringFunctions.swift

import Foundation 

public func aString() -> String { 
    return "1234"; 
} 

如果我調用它$ ./calcs/demo.swift它與錯誤./calcs/demo.swift:4:8: error: no such module 'calcs'

如果我將它替換爲import stringFunctions它類似的錯誤。或者如果我評論出import calcs那麼它與use of unresolved identifier 'aString'錯誤。

如果我將FRAMEWORK_SEARCH_PATHS設置爲父目錄~/calcs~它也沒有成功找到該模塊。

$ xcrun swift --version 
Swift version 1.1 (swift-600.0.57.4) 
Target: x86_64-apple-darwin13.4.0 
+2

是'calcs'實際的框架,或者是它的目錄? –

+0

這只是一個目錄@dmdm我不確定你是否把它變成了一個框架。 – AJP

+0

'import'用於模塊,而不是文件。 – jtbandes

回答

0

由於@dmdm規定的正確答案是here並被重新命名demo.swiftmain.swift並運行:

$ swiftc ~/calcs/stringFunctions.swift ~/calcs/main.swift 
$ ~/calcs/main.swift 
1234