我有这个定义:
{
"repositories": [
{
"type": "package",
"package": {
"name": "symfony/sfGuardPlugin",
"version": "4.0.2",
"dist": {
"url": "http://plugins.symfony-project.org/get/sfGuardPlugin/sfGuardPlugin-4.0.2.tgz",
"type": "tar"
}
}
}
],
"require": {
"symfony/sfGuardPlugin": "4.0.*"
}
}
我正在使用Symfony 1,并且想在上安装它们plugins/sfGuardPlugin/
。我该如何指定?
看来您可以将vendor
目录定义为其他内容(plugins
在您的情况下):
{
"config": {
"vendor-dir": "plugins"
}
}
然后,您可以将包名称重命名为其中没有级别目录,例如:
"package": {
"name": "sfGuardPlugin",
因此,您composer.json
应该看起来像这样:
{
"config": {
"vendor-dir": "plugins"
},
"repositories": [
{
"type": "package",
"package": {
"name": "sfGuardPlugin",
"version": "4.0.2",
"dist": {
"url": "http://plugins.symfony-project.org/get/sfGuardPlugin/sfGuardPlugin-4.0.2.tgz",
"type": "tar"
}
}
}
],
"require": {
"sfGuardPlugin": "4.0.*"
}
}
编辑
使用此配置,您将获得路径(这 当然 对symfony不利):
插件/sfGuardPlugin/sfGuardPlugin-4.0.2/
我发现了一个解决方法composer.json
:
{
"config": {
"vendor-dir": "plugins"
},
"repositories": [
{
"type": "package",
"package": {
"name": "sfGuardPlugin",
"version": "4.0.2",
"source": {
"url": "http://svn.symfony-project.com/plugins/sfGuardPlugin/",
"type": "svn",
"reference": "branches/1.3/"
}
}
}
],
"require": {
"sfGuardPlugin": "4.0.*"
}
}
嗨,我正在尝试使用composer设置一个项目。我能够安装CakePHP,但在自定义目录上安装CakePHP/debug_工具包时遇到了困难。我试图将其安装在“vendor/cakephp/cakephp/app/Plugin/DebugKit/”上,因为cakephp要求其插件安装在其“app”文件夹的Plugin目录中。 我已经根据这个网站设置了我的composer.json,但插件仍然安装在
我正在尝试在我的电脑上运行laravel,但是我很难在我的机器上安装这个资源,下面是linux终端的一点错误 无法创建文件 /var/www/html/composer.phar:fopen(/var/www/html/composer.phar):打开流失败:权限被拒绝下载失败:fopen(/var/www/html/composer.phar):未能打开流:权限被拒绝f写()期望参数1是资源,
我尝试安装hyper ledger composer CLI&它的开发工具,但出现了错误。就像 npm警告不推荐的加密@0.0.3:不再支持此包。它现在是一个内置的节点模块。如果您依赖于加密,您应该切换到内置的加密。npm WARN deprecated Jade@1.11.0:Jade已重命名为pug,请安装最新版本的pug,而不是Jade npm WARN deprecated transfo
在我们的应用程序中使用PHP检查包(任何版本)是否已安装/存在的最干净的方法是什么? 基本上,在我们的应用程序中,我们希望调用具有以下签名的函数: bool函数hasComposerPackage(字符串$PackageName) 这个函数必须包含什么,这样我们才能做这样的事情: 理想情况下,这需要在没有任何命令行exec调用的情况下发生,并且在这个过程中不应该自动加载任何不必要的文件。
我使用的是ZF2 skeleton应用程序,它有一个.gitignore,可以防止外部库提交到git。在调试过程中,我喜欢在库的源代码中到处更改内容,以了解如何工作。如果这些是版本控制的,将很容易将它们恢复到原始状态。 如何强制Composer重新安装特定的框架,以便再次获得新的未修改副本? PS:请不要建议删除.gitignore文件,因为它存在是有原因的;它阻止我的第三方库进入我的应用程序存储
我们如何以编程的方式安装 Composer? 如下载页面所指出的,这个安装程序包含一个签名,当安装程序代码发生改变时,它会随之发生改变,因此不应该长期依赖。 还有另一种方法,就是使用只对 UNIX 实用程序工作的脚本: #!/bin/sh EXPECTED_SIGNATURE="$(wget -q -O - https://composer.github.io/installer.sig)" p