该软件包实际上可以通过packagist获得。在这种情况下,您不需要自定义存储库定义。只需确保添加一个(始终需要)具有匹配版本约束的。require
通常,如果包在 packagist 上可用,请不要添加 VCS 存储库。它只会减慢速度。
对于无法通过 packagist 获得的包,请使用 VCS(或 git)存储库,如您的问题所示。当您这样做时,请确保:
- “存储库”字段在根 composer.json 中指定(它是仅根字段,忽略所需包中的存储库定义)
- 存储库定义指向有效的 VCS 存储库
- 如果类型是“git”而不是“vcs”(如你的问题中所示),请确保它实际上是一个 git 存储库
- 您有一个有问题的软件包
require
- 中的约束与 VCS 存储库提供的版本匹配。您可以使用 来查找可用版本。在这种情况下,这将是一个不错的选择。
require
composer show <packagename>
~2.3
- 中的名称与远程 中的名称匹配。在本例中,它是 。
require
composer.json
gedmo/doctrine-extensions
下面是通过 VCS 存储库安装同一包的示例:composer.json
{
"repositories": [
{
"url": "https://github.com/l3pp4rd/DoctrineExtensions.git",
"type": "git"
}
],
"require": {
"gedmo/doctrine-extensions": "~2.3"
}
}
VCS存储库文档很好地解释了所有这些。
如果有 git(或其他 VCS)存储库具有可用资源,请不要使用“包”存储库。包存储库要求您提供定义中的所有元数据,并将完全忽略所提供的 dist 和源中存在的任何元数据。它们还具有其他限制,例如在大多数情况下不允许进行适当的更新。composer.json
composer.json
避免使用包存储库(另请参阅文档)。
在2013年撰写本文时,这是实现这一目标的一种方法。Composer 添加了对更好方法的支持:请参阅 @igorw 的答案
您有存储库吗?
Git,Mercurial和SVN由Composer支持。
您是否具有对存储库的写入权限?
是的?
存储库是否具有 composer.json
文件
如果您有可以写入的存储库:添加文件或修复现有文件,并且不要使用以下解决方案。composer.json
转到@igorw的答案
仅当您没有存储库或存储库
没有 composer.json
且您无法添加它时,才使用此
这将覆盖 Composer 可能能够从原始存储库中读取的所有内容,包括软件包的依赖项和自动加载。composer.json
使用该类型会将正确定义所有内容的负担转移到您身上。更简单的方法是在存储库中有一个文件,然后使用它。package
composer.json
此解决方案实际上仅适用于极少数情况,即您有无法更改的废弃ZIP下载,或者只能读取但不再维护的存储库。
"repositories": [
{
"type":"package",
"package": {
"name": "l3pp4rd/doctrine-extensions",
"version":"master",
"source": {
"url": "https://github.com/l3pp4rd/DoctrineExtensions.git",
"type": "git",
"reference":"master"
}
}
}
],
"require": {
"l3pp4rd/doctrine-extensions": "master"
}
-
相当于Java中PHP的crypt函数 我正在将我的PHP代码迁移到Google App Engine - Java。因此,我需要一个相当于Java中PHP的crypt函数,因为我已将使用crypt的注册用户的所有密码存储在我的数据库中。 编辑1:这是我用于加密密码的php
-
需要有关如何从接受语言请求标头获取首选语言的示例 我需要一个代码示例或库来解析标头并返回我的首选语言。 指出: “接受语言请求标头”字段类似于“接受”,但限制首选作为请求响应的自然语言集。语言标记在第 3.10 节中定义。
-
无法在 Java 和 PHP 之间交换使用 AES-256 加密的数据 我的问题是:我在Java中加密的东西,我可以在Java中完全解密,但PHP不能解密。我用加密的内容可以使用 解密,但不能在 Java 中解密。 我想从Java应用程序发送和接收加密数据到PHP页面,所以我
-
-
Quercus是Java环境中PHP的可行替代品吗? 对于任何偶然发现这个问题的人,他们不知道是什么 - 它是用Java完成的PHP的实现。 对于我目前正在从事的项目,我们通过cgi在servlet上提供php页面(我知道它很笨拙,但这是支持遗留代码的要求