2017-11-20 24 views
0

私はpackage.jsonに個人的な依存関係があり、常に最新のバージョンをインストールする必要があります。したがって、バージョンの代わりに*です。package.jsonのバージョン番号の代わりに*を使用する場合、常に最新のバージョンを取得するにはどうすればよいですか?

"dependencies": { 
    "@user/package": "*" 
} 

パッケージは私が代わりに*の正確なバージョン番号を入力した場合、それはまだnpm iと古いバージョンをインストールしnpmjsで更新した後 - それは、前の日のように出版された新鮮なバージョンをインストールします。

npmjsでバージョンが1分前に更新されたときに同様の問題が発生しましたが、現在npmjsキャッシュの有効期限が切れるはずです&は新しいバージョンで更新されましたか?

*を使用すると、このような問題を回避して、常に最新版を入手できますか?

私は試しましたnpm cache verifynpm cache clean --force運がない。

+0

@CodeCasterリンクありがとうございました。 node_modulesが存在しない初期インストール中でもアップデートを取得するためにnpm updateを使用しなければなりませんでした。どのパッケージでも最新のバージョンを入手するためにnpmを使用したため、今は確認できません。 –

答えて

1

最初に依存関係をインストールする場合でも、npm installの代わりにnpm updateを使用する必要があります。 npm update

npm install vs. update - what's the difference?

結論対npm install詳細

この質問会談:唯一の大きな違いは、既にファジーバージョニングと モジュールをインストールしていることである...

  • は無視されますnpmでインストールする
  • はnpmで更新されますpdate

ありがとうございました。正しいコマンドのリンクは、CodeCasterにあります。しかし:

問題はまだあります。ほとんどの場合、毎回動作します。しかし。 npmが最新のバージョンに解決しなかったときにちょうど別のアップデートがありました。値を変更すると、現在は*になります。私のバグのようです。

0

あなたはpackagename @ latestキーワードでインストールしようとすることができますが、私が知っている限り、このキーワードはコマンドラインインターフェイスでnpm install --saveとしか使用できません。

npm install --save [email protected] 

はここhttps://docs.npmjs.com/files/package.json のドキュメントを読んだ後、私はあなたの代わりにpackage.jsonファイル内の任意のバージョン番号の「最新」を書くことができました。これはトリックを行う必要があります。

+0

ありがとうございますが、パッケージは既にインストールされていて、それらのパッケージがたくさんあります。私は私の開発マシンでプロジェクトを開くたびに〜15パッケージの 'npm i 'コマンドを持つ最新のバージョンを持つことができるソリューションを探しています。バージョンによってはnpm docs '*'で行うべきですが、そうしないでください。 –

+0

ok、私の答えを編集した、あなたは明らかにバージョン番号として "最新"を使用することができます。ちょうどそれが見つかりました。 –

+1

Kauyn '*'は有効なバージョン表現であり、問​​題はそれに関するものではなく、CodeCasterの回答として「npm update」を使用しなければならなかった 'npm install'コマンドに関するものです。 –

関連する問題