[解決済み】Composer:古い依存関係を更新せずに別の依存関係をインストールするにはどうすればいいですか?
質問
あるプロジェクトにいくつかの依存関係があり、別の依存関係をインストールしたいのですが、他の依存関係はそのままにしておきたいと考えています。そこで、私は
composer.json
を実行すると
composer install
と表示され、次のような出力が得られます。
Installing dependencies from lock file
Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them.
Your requirements could not be resolved to an installable set of packages.
Problem 1
- laravel/framework dev-master requires ext-mcrypt * -> the requested PHP extension mcrypt is missing from your system.
- laravel/framework dev-master requires ext-mcrypt * -> the requested PHP extension mcrypt is missing from your system.
- Installation request for laravel/framework dev-master -> satisfiable by laravel/framework dev-master.
まず最初に、私はmcryptをインストールしているので、なぜそこで文句を言われるのかわかりません。
では、この新しい依存関係をインストールするにはどうすればよいのでしょうか?
私のcomposer.jsonです。
{
"require": {
"opauth/opauth": "*",
"opauth/facebook": "*",
"opauth/google": "*",
"opauth/twitter": "*",
"imagine/Imagine": "dev-develop",
"laravel/framework": "4.*",
"loic-sharma/profiler": "dev-master"
},
"autoload": {
"classmap": [
"app/libraries",
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/tests/TestCase.php"
]
},
"minimum-stability": "dev"
}
解決方法は?
新しいパッケージとそれだけをインストールするには、2つの方法があります。
-
を使用すると
require
コマンドを実行するだけです。composer require new/package
Composer は、使用するのに最適なバージョン制約を推測し、そのパッケージをインストールし、それを
composer.lock
.また、実行することで明示的なバージョン制約を指定することができます。
composer require new/package ~2.5
-または
-
を使用することで
update
コマンドで、新しいパッケージを手動でcomposer.json
を実行します。composer update new/package
Composer が "要件をインストール可能なパッケージ群に解決できなかったと不満を述べた場合は、フラグ
--with-dependencies
. これは、インストール/更新しようとしているパッケージのすべての依存関係をホワイトリストに登録します (ただし、他の依存関係は登録しません)。
質問者のLaravelとmcryptの問題について:CLIのphp.iniで適切に有効化されているかどうか確認してください。もし
php -m
が表示されない場合は、mcryptが欠落しています。
重要です。
を忘れずに指定してください。
new/package
を使用する場合
composer update
! この引数を省略すると、すべての依存関係、および
composer.lock
が更新されます。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン