dart系列之:元世界pubspec.yaml文件详解
文章目錄
- 簡介
- pubspec.yaml支持的字段
- 一個(gè)例子
- 字段詳情
- 總結(jié)
簡介
pubspec.yaml是所有dart項(xiàng)目的靈魂,它包含了所有dart項(xiàng)目的依賴信息和其他元信息,所以pubspec.yaml就是dart項(xiàng)目的meta!
pubspec.yaml支持的字段
根據(jù)dart的定義,pubspec.yaml中可以包含下面的字段:
| name | 是 | package的名字 |
| version | 如果發(fā)布到pub.dev,則需要 | package的版本號(hào) |
| description | 如果發(fā)布到pub.dev,則需要 | package的描述信息 |
| homepage | 否 | package的主頁 |
| repository | 否 | package的源代碼地址 |
| issue_tracker | 否 | package問題跟蹤地址 |
| documentation | 否 | package的文檔信息 |
| dependencies | 否 | package的依賴信息 |
| dev_dependencies | 否 | pacakge的dev依賴信息 |
| dependency_overrides | 否 | 想要覆蓋的package |
| environment | dart2需要 | |
| executables | 否 | package的可執(zhí)行文件路徑 |
| publish_to | 否 | package將如何發(fā)布 |
注意,以上是dart中pubspec.yaml支持的字段,如果是在flutter環(huán)境中,則會(huì)有些額外支持的字段。
一個(gè)例子
我們看一個(gè)具體的例子:
name: my_app version: 11.15 description: >-this is a new app homepage: http://www.flydean.com documentation: http://www.flydean.com environment:sdk: '>=2.10.0 <3.0.0' dependencies:efts: ^2.0.4transmogrify: ^0.4.0 dev_dependencies:test: '>=1.15.0 <2.0.0'字段詳情
下面來看下各個(gè)字段的詳情和限制情況:
name表示的是包的名字,name必須是全小寫,如果有多個(gè)詞的話,可以用下劃線來區(qū)分,如:my_app.
并且只能使用小寫字母和數(shù)字的組合,同時(shí)不能以數(shù)字開頭,并且不要使用dart中的保留字。
Version表示的是版本號(hào),版本號(hào)是由點(diǎn)分割的三個(gè)數(shù)字,如:11.15.0. 后面還可以跟上build版本號(hào):+1, +2, +hotfix.oopsie, 或者預(yù)發(fā)布版本等:-dev.4, -alpha.12, -beta.7, -rc.5.
package的描述信息最好使用英文來描寫,長度是60 到180個(gè)字符,表示這個(gè)包的作用。
有兩種依賴信息,一種是所有使用到這個(gè)packages的人都需要用到的依賴,這種依賴放在dependencies中。
還有一種是只用在當(dāng)前pacakge開發(fā)中的包,這種依賴放在dev_dependencies中。
在某些情況下,我們有可能需要覆蓋某些依賴包,則可以放在:dependency_overrides中。
有些pacakges提供的是工具供大家使用,這些工具有可能是命令行工具,所以需要在executables中指定可以執(zhí)行的命令的路徑。
比如下面的配置:
executables:slidy: mainfvm:那么在執(zhí)行pub global activate之后,就可以在全局執(zhí)行slidy來執(zhí)行bin/main.dart, 和fvm來執(zhí)行binfvm.dart.
因?yàn)镈art是一門新的語言,所以目前來說其變動(dòng)還是挺大的。所以有些應(yīng)用可以依賴于不同的dart版本,這時(shí)候就需要用到environment:
environment:sdk: '>=2.10.0 <3.0.0'上面的代碼中,我們指定了dart sdk的版本范圍。
從dart1.19之后,environment:中還支持指定flutter的版本:
environment:sdk: '>=1.19.0 <3.0.0'flutter: ^0.1.2總結(jié)
以上就是dart的元世界pubspec.yaml詳解。
本文已收錄于 http://www.flydean.com/10-dart-pubspec/
最通俗的解讀,最深刻的干貨,最簡潔的教程,眾多你不知道的小技巧等你來發(fā)現(xiàn)!
歡迎關(guān)注我的公眾號(hào):「程序那些事」,懂技術(shù),更懂你!
總結(jié)
以上是生活随笔為你收集整理的dart系列之:元世界pubspec.yaml文件详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dart系列之:在dart中使用pack
- 下一篇: dart系列之:创建Library pa