Composerが最小安定性設定でどのように機能するか、私は本当に理解していません。
2つのパッケージがあります。 PackageA
とPackageB
としましょう。
composer.json
PackageA
のファイルは次のようになります。
{
"name": "vendor/packagea",
"minimum-stability": "dev",
"require": {
"vendor/packageb": "dev"
}
}
したがって、PackageA
にはPackageB
が必要です。 PackageB
のjsonは次のようになります。
{
"name": "vendor/packageb",
"minimum-stability": "dev"
}
したがって、どちらも最低の安定性はdev
であると言います。だから私は私がそうするときそれを仮定します:
composer create-project vendor/packagea
しかし、それはメッセージで不平を言います:
[InvalidArgumentException]
Could not find package vendor/packagea with stability stable.
不思議に思うのは、最小の安定性をdev
に設定すると、パッケージが「開発」ブランチからプルされると想定するためです。これはgithubの場合は常にdev-master
。
したがって、composer使用するブランチを指定して、インストールを試みました。
composer create-project vendor/packagea testFolder dev-master
しかし、PackageB
が見つからないというメッセージが表示されます。
Installing dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package vendor/packageb dev could not be found.
次に、どのようにしてパッケージをインストールできますか?私はまだ開発中なので、まだPackageAとPackageBのリリースを作成したくありません...
2つの問題があります。
Create-projectでは、デフォルトでこのコマンドは安定した安定性を使用してインストールするパッケージを探します。そのため、デフォルトではなくdev-masterを指定すると機能します。ただし、composer create-project vendor/packagea -s dev
依存関係をインストールした後、dev
と呼ばれるバージョンにパッケージが存在しないため、そのように必要な場合にパッケージを見つけることができないと思います。 dev-masterを要求すると、おそらく次のように機能します。
{
"name": "vendor/packagea",
"minimum-stability": "dev",
"require": {
"vendor/packageb": "dev-master"
}
}
これをどのように修正しましたか?
Composerをインストールした後、次のコマンドを実行してComposer Asset Pluginをインストールします。
php composer.phar global require "fxp/composer-asset-plugin:^1.2.0"
Yii 2.0。アプリケーションテンプレートの1つを選択してインストールを開始します。アプリケーションテンプレートは、Yiiで記述されたWebアプリケーションのスケルトンを含むパッケージです。