作者:Joe轩端,原文鏈接,原文日期:2016-01-31
譯者:shanks逝变;校對(duì):numbbbbb基茵;定稿:星夜暮晨
去年 11 月,我在 Swift 的 JIRA 中創(chuàng)建了一個(gè) SwiftPM 的改進(jìn)建議:SR-353壳影,在 swift build
中拱层,添加一個(gè)類似于 npm init
的包初始化命令,用來創(chuàng)建 Swift
包需要的所有目錄和文件宴咧。這個(gè)提議創(chuàng)建之后不久根灯,Bastian Rinsche 和 Tobias Landsberg 就實(shí)現(xiàn)了這個(gè)特性,而且 PR 被合并掺栅。Bastian 還寫了一篇非常棒的文章介紹他對(duì)于 Swift 開源的一些認(rèn)識(shí)烙肺,并且介紹了他們實(shí)現(xiàn)的swift build --init
命令。
讓我們看看具體應(yīng)該怎么做氧卧。首先桃笙,使用 mkdir
創(chuàng)建一個(gè)新的目錄,用來放置你的包或者應(yīng)用沙绝。這里我們使用 helloworld
作為例子:mkdir helloworld
搏明。然后,使用 cd
命令進(jìn)入 helloworld
目錄闪檬,運(yùn)行命令:swift build --init
星著。
bash
# cd helloworld
# swift build --init
Creating Package.swift
Creating .gitignore
Creating Sources/
Creating Sources/main.swift
Creating Tests/
我們看看 swift build --init
生成的內(nèi)容:
-
Package.swift
:包的"配置信息"(manifest)。swift build --init
使用你創(chuàng)建的目錄名作為包名粗悯。 -
Sources
目錄:按照 SwiftPM 的要求虚循,所有的源代碼文件都放到Sources
目錄下。 -
main.swift
:Swift 應(yīng)用使用main.swift
(有且只有一個(gè))作為程序執(zhí)行的入口样傍。 -
Tests
目錄:存放應(yīng)用的測(cè)試用例横缔。后面會(huì)詳細(xì)介紹。 -
.gitignore
:一個(gè)便捷的 git gitignore 文件铭乾,忽略一些本地編譯時(shí)用到的配置目錄和文件剪廉,比如:.build
和Packages
目錄(一些你不想加入到git
庫的東西)娃循。
在這個(gè) helloword
例子中炕檩,Package.swift
文件內(nèi)容如下:
import PackageDescription
let package = Package(
name: "helloworld"
)
運(yùn)行 swift build
會(huì)創(chuàng)建可執(zhí)行文件 .build/debug/helloworld
,運(yùn)行這個(gè)文件就會(huì)在終端輸出 Hello, world!
.
如果你想編譯一個(gè) Swift 庫,只需要?jiǎng)h除 main.swift
文件笛质,然后替換成你的庫代碼泉沾。在沒有 main.swift
的情況下,SwiftPM
會(huì)創(chuàng)建一個(gè)靜態(tài)的庫妇押。
Tests 目錄
swift build --init
命令還添加了 Tests
目錄跷究,這個(gè)目錄是為以后的自動(dòng)化測(cè)試準(zhǔn)備的。相關(guān)內(nèi)容請(qǐng)閱讀 SR-592 和 SE-0019敲霍,未來 SwiftPM
會(huì)支持自動(dòng)化測(cè)試俊马。
獲取 Ubuntu
下的 Swift
安裝包
如果你想嘗試一下 swift build --init
, 需要獲取 Ubuntu 上最新的 Swift 2.2 包(寫本文時(shí),版本號(hào)是:version 2.2-0ubuntu15)肩杈。請(qǐng)查看這篇文章獲取更多的信息柴我。如果想了解更多關(guān)于 SwiftPM
的信息,請(qǐng)閱讀本文介紹扩然。做一個(gè)快樂的 Swift 程序員吧艘儒!
本文由 SwiftGG 翻譯組翻譯,已經(jīng)獲得作者翻譯授權(quán)夫偶,最新文章請(qǐng)?jiān)L問 http://swift.gg界睁。