2014-01-30 110 views

回答

7

當更新文件pubspec.yaml時,DartEditor自動調用pub get

您可以手動調用它(例如,當您例如簽出從GitHub的一個項目,而無需修改任何文件)使用上下文菜單Pub Get在DartEditor上的文件pubspec.yaml

    • 通過調用pub get在存儲文件pubspec.yaml的軟件包目錄中的命令行中。

    pub get下載軟件包版本,滿足您的版本約束文件pubspec.lock(在包根目錄)或最新版本中指出(0.0.1在你的例子可能是any爲「最近」),如果pubspec.lock沒有按不存在。 pub get/pub upgrade如果文件不存在,則創建文件pubspec.lock,並保存剛剛下載的已下載軟件包的版本。

    檢查更新包,並使用

    • 上下文菜單Pub Upgrade下載他們DartEditor在該文件pubspec.yaml存儲在包目錄,在命令行上的文件pubspec.yaml
    • pub upgrade

    pub upgrade下載即滿足您的版本約束和存儲文件pubspec.lock在下載版本的最新版本。

    pub get/pub upgrade喜歡(不包含-版本號)的穩定版本像0.0.11.2.0+1在之前版本一樣0.0.2-11.2.1-1如果有的話是可用的fulfulls您的版本約束。

    如果你想有一個預發佈,你必須收緊版本約束,以便只有預發佈的滿足您的約束(如angular: '>=1.2.1'

    pub upgrade可能會出現像

    分析器0.10的輸出.5(9個新版本可用)

    這表明有9個預發佈版本可用,比下載的穩定版本更新。

    版本約束你的依賴需要滿足您的所有依賴的依賴的版本限制(例如,如果你添加的依賴observepolymer其中polymer取決於observe本身)。

    您可以強制pub get/pub upgrade來,通過在pubspec.yamldependencies_override:,而不是dependencies:下定義一個版本約束的依賴侵犯了您的依賴相關性的版本。

    您也可以添加dev_dependencies(例如unittest),它們只在軟件包中定義時才下載,但只在其中一個依賴項中定義時纔會被忽略。

    你看,即使是經驗豐富的Dart開發者,這也是一個高級話題。

  • 5

    如果你是一個經驗豐富的Dartisan,這個問題可能看起來很微不足道,不值得問,但來自Java世界(我的學生和我習慣手動下載.jars,然後(有時)不得不復制他們超過我們的項目)這是一個自然而然要問的新生問題。這裏是上下文:兩天前角的v0.9.5出來了,所以我做了一個心理筆記,上傳我們本地項目中的庫。

    好吧,看來我們需要的只是一個恰當定義的pubspec.yaml文件,而其餘的則是Dart pub package manager。在Dart編輯器中,我猜這些依賴關係會在項目刷新或重新構建時得到更新。在我們的項目,我們剛好有,例如,一個pubspec.yaml文件是這樣的:

    name: angular_dart_demo 
    version: 0.0.1 
    dependencies: 
        angular: any 
    

    (而不是,比方說,angular: ">=0.9.0 <0.10.0"),它允許酒吧經理去獲取最新angular。毫不費力。尼斯。

    相關問題