yarnは、Facebook (Meta)によって開発された、パッケージマネージャです。
今回は、yarnの使い方を解説していきたいと思います。
公式サイト
yarnの公式サイトはこちらです。
yarn公式サイト(https://yarnpkg.com/)
インストールについて
yarnでは、Corepackを使う方法が推奨されています。
Corepackは、pnpmやyarnなどのパッケージマネージャを管理できるツールです。
そして、Node.js v16.10以上のが使える環境では、すでにCorepackが入っていると思います。
もし、Node.jsを使っていない場合は、こちらを参考にインストールしておきましょう。
nodebrewを使ってNode.jsをインストールした場合、私の環境ではエラーが起こり、yarnコマンドが使えませんでした。
では、corepackコマンドが使えるかどうか、helpを表示してみましょう。
以下のコマンドを実行します。
$ corepack -hコマンドの使い方が表示されれば、corepackコマンドを使うことができます。
さらにyarnは、npmでインストールしなくても、corepack enableコマンドで許可してあげるだけで使うことができます。
では、以下のコマンドで、パッケージマネージャを許可します。
(管理者権限で実行する必要があるようです)
$ sudo corepack enableまたは、次のコマンドでyarnのみ許可することも可能です。
$ sudo corepack enable yarnもし管理者権限で実行しなかった場合、次のようなエラーが表示されてしまうと思います。ご注意ください。
$ corepack enable
Internal Error: EACCES: permission denied, symlink '../lib/node_modules/corepack/dist/pnpm.js' -> '/usr/local/bin/pnpm'
Error: EACCES: permission denied, symlink '../lib/node_modules/corepack/dist/pnpm.js' -> '/usr/local/bin/pnpm'これでyarnコマンドが使えるようになります。
$ yarn -v
1.22.19バージョンを確認する
さきほど実行した、yarn -vというのは、yarnのバージョンを確認するコマンドです。
Yarn のバージョンは、以下のコマンドで確認することができます。
$ yarn --version
1.22.19上のコマンドを短くしたものが、こちらです。
$ yarn -v
1.22.19新しいプロジェクトの開始(package.jsonの作成)
新しいプロジェクトを開始する場合は、 package.jsonファイルを作成します。package.jsonは、プロジェクト(作成するパッケージ)がどういうものなのか、が書かれたものです。
- プロジェクト名(パッケージ名)
- バージョン
- プロジェクト(パッケージ)の説明
- ライセンス
- 使用しているパッケージ
などの情報が、package.jsonには書かれます。
package.jsonは、以下のコマンドで作成できます。
$ yarn initすると、いくつか質問が表示されますので、必要な情報を入力します。
あとから変更もできますし、作ったパッケージを公開しないのであれば、とくに気にする必要はないと思いますので、何も入力せずに、Enter(return)を押してしまっても構いません。
また、-yオプションをつけることで、すべての質問にEnter(return)を押したときと同じふうになります。
$ yarn init -yパッケージを公開しないのであれば、間違って公開してしまうことを防ぐため、package.jsonに「"private": true」を追加しておくといいです。-pオプションを使うと、かんたんに"private": trueが追加できます。
$ yarn init -pもちろん、-yと同時に使うこともできます。
$ yarn init -ypパッケージをインストールする
yarnでパッケージをインストールするには、yarn addを使います。
$ yarn add パッケージ名例えば、Bootstrapをインストールしたい場合は、以下のようになります。
$ yarn add bootstrapパッケージのバージョンを指定する
パッケージのバージョンを指定したい場合は@の後にバージョンを入力します。
$ yarn add パッケージ名@バージョン例えば、Bootstrapのv5.0.2をインストールしたい場合は、以下のようにします。
$ yarn add bootstrap@v5.0.2開発用のパッケージをインストールする
もし、インストールしたいパッケージが開発のときのみに使うものであれば、–devというオプションを使います。
$ yarn add --dev sassまたは、これを省略して-Dとすることもできます。
$ yarn add -D sasspackage.jsonからインストールする
今までと環境が変わったなどの場合には、package.jsonに書かれたパッケージを、まとめてインストールすることができます。
package.jsonと同じ階層で、以下のコマンドを実行します。
$ yarn installまたは、yarnを実行するだけでも、同じふうにインストールされます。
$ yarnパッケージのアップグレードする
パッケージをアップグレードするには、yarn upgradeを使います。
すべてのパッケージをアップグレード
すべてのパッケージをアップグレードするには、次のコマンドを実行します。
$ yarn upgrade最新のバージョンにアップグレードするには、--latestオプションを使います。
$ yarn upgrade --latestパッケージ名を指定してアップグレード
アップグレードするパッケージを指定するには、次のようにします。
$ yarn upgrade パッケージ名また、バージョンを指定することもできます。
$ yarn upgrade パッケージ名@バージョン例えば Bootstrapをv5.2.3にアップグレードしたい場合は、次のようにします。
$ yarn upgrade bootstrap@v5.2.3スクリプトを実行する
package.jsonにあらかじめスクリプトを書いておき、それを実行することができます。
まず、package.jsonには、次のように追加します。
{
  "name": "sample_project",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "private": true,
  "scripts": {
    "say": "echo こんにちは"
  },
  "dependencies": {
    "bootstrap": "^5.2.3"
  },
  "devDependencies": {
    "sass": "^1.56.1"
  }
}
スクリプトを実行するには、yarn runを使います。
$ yarn run say
yarn run v1.22.19
$ echo こんにちは
こんにちは
✨  Done in 0.03s.runを省略しても、同じ動作をします。
$ yarn say
yarn run v1.22.19
$ echo こんにちは
こんにちは
✨  Done in 0.03s.パッケージのコマンドを実行する
yarn runを使えば、インストールしたパッケージのコマンドを実行することもできます。
例えば、さきほどインストールしたSassの、バージョンを表示するコマンドを実行するには、次のようにします。
$ yarn run sass --versionrunを省略しても、同じ動きをします。
$ yarn sass --versionまた、さきほど紹介したスクリプトを利用して、Sassのコマンドをあらかじめ書いておくと、実行がかんたんになります。
{
  "name": "sample_project",
  "version": "1.0.0",
  "main": "index.js",
  "license": "MIT",
  "private": true,
  "scripts": {
    "build:sass": "sass --no-source-map src/sass/:dist/css/"
  },
  "dependencies": {
    "bootstrap": "^5.2.3"
  },
  "devDependencies": {
    "sass": "^1.56.1"
  }
}次のコマンドで実行できます。
$ yarn run build:sassrunを省略しても、同じ動作をします。
$ yarn build:sassパッケージをアンインストールする
以下のコマンドでパッケージをアンインストールできます。
$ yarn remove パッケージ名例えば、Bootstrapをアンインストールしたい場合は、次のようになります。
$ yarn remove bootstrapまとめ
yarnは、Facebook (Meta)によって開発された、npmにかわるパッケージマネージャです。
Node.jsをインストールすることで、corepackが使えるようになり、corepackでyarnを許可することで、使えるようになります。
yarnの使い方はnpmとよく似ているので、学習にかかる時間はほとんどかからず、すぐに使えるようになることができます。












