私は自分のパッケージを構築しており、プロジェクトにもサンプルフォルダーがあります。私のプロジェクト構造は次のようなものです:
- node_modules
- example
-node_modeules
- my-library
-index.html
-index.js
-package.json
- src
-library.jsx
package.json
サンプルフォルダー内のpackage.json
ファイルには次のものが含まれます。
"dependencies":{
"my-library":"file:../"
}
を実行すると npm install
、ライブラリが正しく構築されてから に追加されていることがわかりますexample\node_modules\
。すべてが期待どおりです。
ただし、 で同じことを試してみたところ、yarn install
うまくいきませんでした。Yarn キャッシュをクリアしたので、キャッシュの問題ではないことに注意してください。問題は、実行時にyarn install
、Yarn がルート フォルダーの package.json を尊重しないように見えることです。つまり、
ルートフォルダー内に、package.json
ファイルに含まれる
"name":"my-library"
"version":"1.0.0"
"main":"lib/result.js"
"files":"["lib"]"
これは、結果パッケージにフォルダーのみを含めるようにnpmにlib
指示します-npmは指示にうまく従っていますが、Yarnはそれを完全に無視し、結果パッケージにすべてを入れたようです.
注: ライブラリを npm レジストリに公開してからyarn install my-library
すべてを実行すると、期待どおりに動作します。
何か案は?