目錄

dart pub downgrade

Downgradepub 工具的其中一個命令。

$ dart pub downgrade [--[no-]offline] [-n|--dry-run] [dependencies...]

不帶任何額外參數,dart pub downgrade 會取得目前工作目錄中 pubspec.yaml 檔案中列出的所有依賴關係的最低版本,以及它們的遞移依賴關係。例如:

$ dart pub downgrade
Resolving dependencies... (1.2s)
+ barback 0.13.0
+ collection 0.9.1
+ path 1.2.0
+ source_maps 0.9.0
+ source_span 1.0.0
+ stack_trace 0.9.1
Changed 6 dependencies!

dart pub downgrade 命令會建立一個鎖定檔。如果已存在鎖定檔,pub 會忽略該檔案,並從頭開始產生一個新的鎖定檔,使用所有依賴關係的最低版本。

請參閱dart pub get 文件以取得關於套件解析和系統套件快取的更多資訊。

降級特定依賴關係

#

可以告訴 dart pub downgrade 將特定的依賴關係降級到最低版本,同時盡可能保持其他依賴關係不變。例如:

$ dart pub downgrade test
Resolving dependencies...
  barback 0.15.2+2
  bot 0.27.0+2
  browser 0.10.0+2
  chrome 0.6.5
  collection 1.1.0
  path 1.3.0
  pool 1.0.1
  source_span 1.0.2
< stack_trace 0.9.2 (was 1.1.1)
  stagexl 0.10.2
< test 0.10.0 (was 0.11.4)
These packages are no longer being depended on:
- matcher 0.11.3
Changed 3 dependencies!

如果您正在降級特定的依賴關係,pub 會嘗試尋找符合新依賴關係約束的任何遞移依賴關係的最高版本。任何遞移依賴關係通常也會因此被降級。

取得新的依賴關係

#

如果在執行 dart pub downgrade 之前,將依賴關係新增到 pubspec,它會取得新的依賴關係及其任何遞移依賴關係。這與 dart pub get 的行為相同。

移除依賴關係

#

如果在執行 dart pub downgrade 之前,將依賴關係從 pubspec 中移除,則該依賴關係將不再可供匯入。移除的依賴關係的任何遞移依賴關係也會被移除,只要沒有其他剩餘的直接依賴關係也依賴它們。這與 dart pub get 的行為相同。

離線降級

#

如果您沒有網路存取權限,仍然可以執行 dart pub downgrade。因為 pub 將套件下載到系統上所有套件共享的中央快取,所以它通常可以找到先前下載的套件,而不需要使用網路。

但是,預設情況下,如果您有任何託管的依賴關係,dart pub downgrade 會嘗試連線。如果您不希望 pub 執行此操作,請傳遞 --offline 標誌。在離線模式下,pub 只會在您的本機套件快取中尋找,嘗試從已有的套件中找到一組適用於您的套件的版本。

選項

#

如需適用於所有 pub 命令的選項,請參閱全域選項

--[no-]offline

#

預設情況下,pub 會連線到網路以擷取託管的套件 (--no-offline)。若要改為使用快取的套件,請使用 --offline。如需詳細資訊,請參閱離線擷取

--dry-run-n

#

報告哪些依賴關係會變更,但不會進行任何變更。

--tighten

#

更新 pubspec.yaml 中依賴關係的下限以符合已解析的版本,並傳回已變更約束的清單。可以套用至特定依賴關係

在工作區中

#

Pub 工作區中,dart pub downgrade 會降級整個工作區中的所有依賴關係。