Composer 本地存储库未安装(Laravel)
Composer local repository not installing (for Laravel)
我正在开发一个 Laravel 包,我试图使用 composer.json 中的 VCS 选项将它添加到我的项目中,但它没有安装。我试过以下方法
链接到我的 Vagrant 机器上的绝对路径
"repositories": [
{
"type": "vcs",
"url": "/home/vagrant/Code/cld/gallery/packages/Notflip/cld/"
}
],
"require": {
"php": ">=5.5.9",
"laravel/framework": "5.2.*",
"notflip/cld": "dev-master"
},
链接到我的 Windows 机器的绝对路径
"repositories": [
{
"type": "vcs",
"url": "D:/Sites/cld/gallery/packages/Notflip/cld"
}
],
"require": {
"php": ">=5.5.9",
"laravel/framework": "5.2.*",
"notflip/cld": "dev-master"
},
但是没有任何效果,项目位置如下:
我在 Windows 机器上使用 Vagrant (Homestead)。
Vcs 用于版本控制而非本地。使用 class 映射并将其指向包根目录可能会更幸运。
尝试将其更改为:
"repositories": [
{
"type": "path",
"url": "packages/Notflip/cld"
}
],
"require": {
"php": ">=5.5.9",
"laravel/framework": "5.2.*",
"notflip/cld": "*"
},
并将以下内容添加到您的 composer.json
"minimum-stability": "dev"
您可以在此处找到更多相关信息:https://getcomposer.org/doc/05-repositories.md#path
我做的和@roj-vroemen 差不多,但有点不同。
在我的例子中,在我的项目目录中创建一个名为 packages 的文件夹,并在其中添加我的辅助包。
- 项目目录
- foo-项目
- 你好世界项目
- 包
- 我的第三方包
在我的第三方包 composer.json 我添加以下行:
{
"name": "paubenetprat/my-third-party-package",
"description": "My third party package description.",
"type": "library",
"require": {
...
},
"minimum-stability": "stable"
}
之后,在我的主项目 composer.json (foo-project
) 中添加以下内容:
"repositories": [
{
"type": "path",
"url": "../packages/my-third-party-package",
"options": {
"symlink": true
}
}
],
"require": {
"paubenetprat/my-third-party-package": "dev-master"
}
最后你只需要 运行:
composer update paubenetprat/my-third-party-package
指定 dev-[current-project-branch]
很重要。如果您在第三方包上开发功能(feature/whatever-your-are-doing
),您应该在主项目作曲家上指定它:
"require": {
"paubenetprat/my-third-party-package": "dev-feature/whatever-your-are-doing"
}
我正在开发一个 Laravel 包,我试图使用 composer.json 中的 VCS 选项将它添加到我的项目中,但它没有安装。我试过以下方法
链接到我的 Vagrant 机器上的绝对路径
"repositories": [
{
"type": "vcs",
"url": "/home/vagrant/Code/cld/gallery/packages/Notflip/cld/"
}
],
"require": {
"php": ">=5.5.9",
"laravel/framework": "5.2.*",
"notflip/cld": "dev-master"
},
链接到我的 Windows 机器的绝对路径
"repositories": [
{
"type": "vcs",
"url": "D:/Sites/cld/gallery/packages/Notflip/cld"
}
],
"require": {
"php": ">=5.5.9",
"laravel/framework": "5.2.*",
"notflip/cld": "dev-master"
},
但是没有任何效果,项目位置如下:
我在 Windows 机器上使用 Vagrant (Homestead)。
Vcs 用于版本控制而非本地。使用 class 映射并将其指向包根目录可能会更幸运。
尝试将其更改为:
"repositories": [
{
"type": "path",
"url": "packages/Notflip/cld"
}
],
"require": {
"php": ">=5.5.9",
"laravel/framework": "5.2.*",
"notflip/cld": "*"
},
并将以下内容添加到您的 composer.json
"minimum-stability": "dev"
您可以在此处找到更多相关信息:https://getcomposer.org/doc/05-repositories.md#path
我做的和@roj-vroemen 差不多,但有点不同。
在我的例子中,在我的项目目录中创建一个名为 packages 的文件夹,并在其中添加我的辅助包。
- 项目目录
- foo-项目
- 你好世界项目
- 包
- 我的第三方包
在我的第三方包 composer.json 我添加以下行:
{
"name": "paubenetprat/my-third-party-package",
"description": "My third party package description.",
"type": "library",
"require": {
...
},
"minimum-stability": "stable"
}
之后,在我的主项目 composer.json (foo-project
) 中添加以下内容:
"repositories": [
{
"type": "path",
"url": "../packages/my-third-party-package",
"options": {
"symlink": true
}
}
],
"require": {
"paubenetprat/my-third-party-package": "dev-master"
}
最后你只需要 运行:
composer update paubenetprat/my-third-party-package
指定 dev-[current-project-branch]
很重要。如果您在第三方包上开发功能(feature/whatever-your-are-doing
),您应该在主项目作曲家上指定它:
"require": {
"paubenetprat/my-third-party-package": "dev-feature/whatever-your-are-doing"
}