【Flutter/Dart】package(パッケージ)の導入と管理方法!アップデートやpubspec.yamlの役割
この記事からわかること
- Flutter/Dartのパッケージ管理システム「pub」の使い方
- pubspec.yamlの役割とは?
- アップデートやバージョンの確認方法
index
[open]
\ アプリをリリースしました /
環境
- Android Studio:Koala
- Xcode:16.0
- Flutter:3.29.2
- Dart:3.7.2
- Mac M1:Sonoma 14.6.1
Flutterのパッケージ管理
Flutterのパッケージ管理システムはDartの「pub」を利用しています。API通信機能やデータベース機能など0から実装するにはコストのかかる機能は手軽に実装できるパッケージ(ライブラリ)を使用する方が効率的です。この外部パッケージを手動で管理するのは大変なので「pub」という管理システムを使用して、導入やアップデート、バージョンや依存関係の管理などを簡単に行うことができるようになります。
Flutterを導入時点で「pub」もインストールされているので導入作業などは必要なくflutter pubコマンドが実行できるようになっています。
また自作で作成したパッケージなども「pub.dev」にアップロードすることで公開することが可能です。
pubspec.yaml
「pub」で重要なファイルが「pubspec.yaml」です。このファイルはパッケージ情報を記述するファイルです。このファイルにはインストール済みのパーケージ名やそのバージョン、環境自体の設定などが記述されています。
name: testapp
description: "A new Flutter project."
publish_to: 'none'
version: 1.0.0+1
# Dartのバージョン指定
environment:
sdk: ^3.7.2
# アプリで使用するライブラリ
dependencies:
flutter:
sdk: flutter
# パッケージ一覧
cupertino_icons: ^1.0.8
shared_preferences: ^2.5.2
realm: ^20.0.1
# 開発中に使用するライブラリ
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^5.0.0
flutter:
uses-material-design: true
pubspec.lock
「pubspec.lock」ファイルは依存関係のバージョンを固定するファイルです。このファイルにはパッケージがインストール/アップデートされるたびにバージョン情報を記述されます。これにより別の開発者が新しくパッケージをインストールする際に共通のバージョンで開発が進められるようになります。
コマンドの種類
「pub」の操作はflutter pubコマンドを使用して行います。
パッケージのインストール
任意のパッケージをインストールしたい場合はflutter pub add パッケージ名コマンドを実行します。このコマンドはpubspec.yamlファイルへの追記と後述するflutter pub getを同時に行ってくれるので基本的にこのコマンドを実行していればインストールが完了します。
$ flutter pub add shared_preferences
dev_dependencies側にインストールしたい場合は--devオプションを付与します。
$ flutter pub add --dev flutter_lints
flutter pub get
pubspec.yamlファイルに手動でパッケージを記述した場合はflutter pub getコマンドを実行することでpubspec.yamlファイルに記述されているパッケージをインストールしてくれます。これは既存プロジェクトの環境構築の段階などでpubspec.yamlファイルが既にある場合などに活用できます。
$ flutter pub get
パッケージのアップデート
パッケージをアップデートしたい場合はflutter pub upgradeコマンドを実行します。このコマンドを実行するとインストールされている全てのパッケージを最新バージョンまでアップデートします。
$ flutter pub upgrade
最新ではなくメジャーバージョンまでに留めたい場合は--major-versionsオプションを付与します。
$ flutter pub upgrade --major-versions
アップデート可能バージョンを確認する
アップデート可能バージョンを確認するにはflutter pub outdatedコマンドを実行します。このコマンドを実行すると現在のバージョンやアップデート可能なバージョン、最新のバージョンなどを確認することができます。
$ flutter pub outdated
Showing outdated packages.
[*] indicates versions that are not the latest available.
Package Name Current Upgradable Resolvable Latest
direct dependencies:
realm *1.6.1 *1.6.1 *1.6.1 20.0.1
shared_preferences *2.2.3 *2.2.3 *2.2.3 2.5.2
dev_dependencies:
flutter_lints *4.0.0 *4.0.0 *4.0.0 5.0.0
You are already using the newest resolvable versions listed in the 'Resolvable' column.
Newer versions, listed in 'Latest', may not be mutually compatible.
パッケージの削除
パッケージを削除したい場合はflutter pub remove パッケージ名コマンドを実行します。
$ flutter pub remove realm
キャッシュの削除
キャッシュを削除したい場合はflutter pub cache cleanコマンドを実行します。
$ flutter pub cache clean
まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。
ご覧いただきありがとうございました。





