問題タブ [lerna]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
18622 参照

npm - ローカル プロジェクトがローカルの lerna パッケージに依存できるようにする

開発中のプロジェクトの lerna リポジトリがあります。相互に依存するいくつかのパッケージがあります。開発を容易にするために、どのパッケージも公開されておらず、互いに最新バージョンに依存しています。

ディレクトリツリー

foo/パッケージ/コア/package.json

barlerna プロジェクトをテストするために使用している別のプロジェクト があります。現在、ローカルの依存関係を使用してその依存関係にリンクしていますfile::

バー/package.json

このアプローチは、私に厄介な世界をもたらしました。

  • npm を使用すると、常にENOENT .DELETE エラーが発生します。私のpackage-lock.jsonを削除して再インストールすると、私の人生は何年もかかりました。
  • 糸を使用して、私はできませんでしyarn installbar。Yarn は への依存関係をたどり、 にfile:依存し@foo/coreていることを確認し、@foo/errorslerna のシンボリック リンクについては認識していません。これにより失敗し、見つからないことがわかります@foo/errors

これにより、このプロジェクトの実際のコードを書くことは、この混乱した依存関係管理の二次的なものになりました。

このプロジェクト構造を機能させるにはどうすればよいですか (かなり単純だと思いますか?)。この時点で、lerna/yarn/npm/pnpm/shell scripts/MS DOS を開きます。

0 投票する
0 に答える
358 参照

node.js - 2 つの lerna モノレポ間の相互依存性

同時に開発したい2つのモノレポがあります。構造は次のとおりです。

モノレポA

モノレポB

依存関係は次のとおりです。

私は使用しています

両方の monorepos でコマンドを実行します。これにより、1 つの monorepo 内ですべてがうまくいきます。今はレギュラーでやってます

依存関係に従って monorepoB 内。

これは componentB2 では機能しますが、componentB1 では失敗します。問題は、リンクされたコンポーネント自体が内部パッケージに依存している場合、リンクが機能しないことです。

monorepoB で npm ls componentA2 を実行すると、

ただし、componentA1 へのリンクは有効です (ただし、推移的な依存関係はありません)。

この問題を解決するには?