【问题标题】:How to add FirePHP using composer to Zend Framework 2如何使用 Composer 将 FirePHP 添加到 Zend Framework 2
【发布时间】:2013-03-16 00:20:38
【问题描述】:

我正在尝试使用 composer 将 FirePHP 添加到我的 Zend Framework 2 项目中,但出现错误。
我的操作系统是 Windows 7。
我尝试了以下方法使其工作:

我在 composer.json 文件中添加了以下代码:

"repositories": [{
    "type": "vcs",
    "url": "https://github.com/RobLoach/firephp-core"
}],
"require": {
    "firephp/firephp-core": "dev-master" // Tried also: "firephp/firephp-core": "*"
}

这是我遇到的一个错误:

[RuntimeException]
Failed to clone http://github.com/RobLoach/firephp-core.git, git was not found, check that it is installed and in your PATH env.

我尝试将以下代码添加到 composer.json,我在 firephp pull request 中找到了该代码。 :

"require": {
    "firephp/firephp-core": "*"
}

但它给了我上面发布的相同错误。 作曲家对我来说是全新的。我找不到任何有用的教程,所以我不确定它是如何工作的,但我正在尽力熟悉它。
我希望有人能告诉我我做错了什么。
谢谢。

编辑: 感谢@Seldaek 的帮助,我得到了它的工作,但它删除了我的 Zend 库文件夹。
这是来自 cmd 的日志:

E:\xampp\htdocs\ZendSkeleton>php composer.phar update
Loading composer repositories with package information
Updating dependencies (including require-dev)
  - Installing firephp/firephp-core (dev-master f60753a)
    Cloning f60753a8dd7817e4da6bc73e0e717387a9a0866a

  - Removing zendframework/zendframework (2.0.5)
Writing lock file
Generating autoload files

有没有办法停止删除 Zend 文件夹?

这是我的完整 composer.json 文件:

{
    "name": "zendframework/skeleton-application",
    "description": "Skeleton Application for ZF2",
    "license": "BSD-3-Clause",
    "keywords": [
        "framework",
        "zf2"
    ],
    "homepage": "http://framework.zend.com/",
    "require": {
        "php": ">=5.3.3",
        "zendframework/zendframework": "2.*"
    },
    "require": {
        "firephp/firephp-core": "dev-master"
    },
    "config": {
        "bin-dir": "E:/xampp/htdocs/ZendSkeleton/"
    }
}

【问题讨论】:

    标签: php zend-framework2 composer-php firephp


    【解决方案1】:

    问题是该软件包只有一个可用的 dev-master 版本,并且默认情况下是与 git 一起安装的。如果您的 PATH 中没有可用的 git,您可以使用 --prefer-dist 运行 composer,这将强制它从 zip 存档而不是通过 git 安装。 composer update --prefer-dist 之类的东西应该可以解决。

    更好的解决方法是确保 git 可执行文件可在 PATH 环境变量中访问。如果您不知道我在问什么,也许另一种选择是从“Git Bash”外壳而不是 cmd.exe 运行 composer。

    【讨论】:

    • 感谢您的回复,我重新安装了 msysgit 并开始工作,但它删除了我的 Zend lib 文件夹,您知道为什么吗?我用更多细节编辑了我的第一篇文章
    • 你覆盖了 composer.json 中的 require 块,你定义了它两次,所以第二个清除了第一个并且不再需要 zendframework。您只需将 firephp/firephp-core 行添加到第一个 require 块并删除第二个。
    • @user1409508 关于bin-dir,你可以使用“.”将它们安装在当前目录中,而不是放置完整路径,这意味着作曲家配置将无法在您的机器上运行。
    猜你喜欢
    • 2013-08-15
    • 1970-01-01
    • 1970-01-01
    • 2013-11-27
    • 2013-12-06
    • 1970-01-01
    • 2015-09-15
    • 2015-04-07
    • 2018-01-06
    相关资源
    最近更新 更多