Viv*_*ndi 13 github composer-php packagist
我真的不明白Composer如何使用最小稳定性设置.
我有两个包.让我们说吧,PackageA和PackageB.
该composer.json文件PackageA看起来像这样:
{
"name": "vendor/packagea",
"minimum-stability": "dev",
"require": {
"vendor/packageb": "dev"
}
}
Run Code Online (Sandbox Code Playgroud)
所以PackageA需要PackageB.json PackageB看起来像这样:
{
"name": "vendor/packageb",
"minimum-stability": "dev"
}
Run Code Online (Sandbox Code Playgroud)
所以两者都说最小稳定性dev.所以我假设我这样做:
composer create-project vendor/packagea
Run Code Online (Sandbox Code Playgroud)
但随后它抱怨了这条消息:
[InvalidArgumentException]
Could not find package vendor/packagea with stability stable.
Run Code Online (Sandbox Code Playgroud)
我发现这很奇怪,因为我认为设置最小稳定性dev会将包从其"开发"分支中拉出来.在github的情况下总是如此dev-master.
所以我试着通过告诉作曲家使用什么分支来安装它:
composer create-project vendor/packagea testFolder dev-master
Run Code Online (Sandbox Code Playgroud)
但后来它抱怨它无法找到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.
Run Code Online (Sandbox Code Playgroud)
那我怎么能安装我的包?我还在开发所以我不想为PackageA和PackageB创建一个版本......
Sel*_*aek 14
有两个问题:
在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"
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23815 次 |
| 最近记录: |