0

たぶん私はここに完全にオフトラックと私は間違った考えを追いかけています:私はNPMモジュールが含まれているNode.jsのプロジェクト(のはmy_npm_moduleそれを呼びましょう)私が持っているNode.jsのNPMの依存関係のみ

また取り組んでいます。

モジュールのディレクトリは、このように私のプロジェクトにシンボリックリンクされています。今、私がしたいので、私は、私が更新/のmymoduleがインストールされて取得する必要はありませんNPM開発モードで/更新をインストールする呼び出すとき

/home 
    | 
    |__ myproject 
    | | 
    | |__ node_modules 
    |   |__ some_other_module 
    |   |__ my_npm_module (should only get installed/updated in production mode) 
    |   |__ my_npm_module (symlinked only in development mode from /home/modules/mymodule) 
    | 
    |__modules 
     |__ my_npm_module (symlinked to /home/myproject/node_modules/mymodule) 

シンボリックリンクされたバージョンを使用してください。

しかし、私はmymoduleをプロダクションモードでインストール/アップデートしたいと思っています。プロダクション(NODE_ENV = production)モードではのみです。

開発版プロダクションでは「依存関係」がインストール/更新され、開発モードでは「devDependencies」がインストール/アップデートされるため、ここではちょっとしたことがあります。

私が探しているのは、 "productionDependencies"のようなものか、少なくともこの状況をカバーするソリューションです。

答えて

0

申し訳ありませんが、それを行う方法はありません。

展開するときに余分な行を追加することができます。

$ npm install my_module 
$ NODE_ENV=production npm install 

そして、あなたはあなたのモジュールの開発を終了したときに、あなただけの余分な行を削除し、依存関係に追加し(それは生産のための準備ができているので、のは、あなたはもうそれをリンクしたくないとしましょう)。

もう1つのアイデアは、デプロイスクリプトでプロダクション用にpackage.jsonファイルを変更することです。これにより、モジュールは本番用にのみインストールされます。

+0

これは私が望んでいたものではありませんが、おそらく正しいでしょう。 代わりを提供していただきありがとうございます。 – LongHike

関連する問題