【问题标题】:Composer not composing - saying file not found作曲家不作曲 - 说找不到文件
【发布时间】:2015-07-04 07:41:31
【问题描述】:

我正在使用出色的 phpwkhtmltopdf 库并想更新到最新版本,为此我需要使用 composer。

文件结构:

vendor
  --mikehaertl
    --php-shellcommand
    --php-tmpfile
  autoload.php

Composer.json 文件:

{
"name": "mikehaertl/phpwkhtmltopdf",
"description": "A slim PHP wrapper around wkhtmltopdf with an easy to use and clean OOP interface",
"keywords": ["pdf", "wkhtmltopdf", "wkhtmltoimage" ],
"homepage": "http://mikehaertl.github.com/phpwkhtmltopdf/",
"type": "library",
"license": "MIT",
"authors": [
    {
        "name": "Michael Haertl",
        "email": "haertl.mike@gmail.com"
    }
],
"require": {
    "php": ">=5.0.0",
    "mikehaertl/php-tmpfile": "1.0.*",
    "mikehaertl/php-shellcommand": "1.0.*"
},
"autoload": {
    "psr-4": {
        "mikehaertl\\wkhtmlto\\": "src/"
    }
},
"extra": {
    "branch-alias": {
        "dev-master": "2.0.x-dev"
    }
}
}

我正在尝试像这样使用库:

require '/home/bookmark/vendor/autoload.php';
use mikehaertl\wkhtmlto\Pdf;
...
$pdf = new Pdf('http://anysite.com'); <-- error points to this line

问题是我得到了错误:

致命错误:在第 132 行的 /home/bookmark/public_html/ajax/action.php 中找不到类 'mikehaertl\wkhtmlto\Pdf'

这是我第一次使用作曲家,知道我做错了什么吗?

【问题讨论】:

  • 在 composer.json 中,我认为您可以删除自动加载并在 require 部分添加库。简单的方法是运行命令 composer require mikehaertl/phpwkhtmltopdf
  • 您可以删除其他必需的库、分支别名,将更改名称、描述等添加到您自己的配置文件中。您正在使用 phpwkhtmltopdf 库中的 composer.json。您应该创建自己的。
  • 这对我来说是全新的,你能扩展一下吗?
  • 假设你安装了 composer(否则我猜你有 composr.phar)只需删除 composer.json 并运行“composer require mikehaertl/phpwkhtmltopdf”。它会生成你需要的一切。
  • 我已经尝试过了并获得了-bash: composer: command not found,但肯定安装了作曲家,因此我有vendor 目录,我也有.composer 目录 - 我需要在特定目录中吗?运行那个?

标签: php composer-php psr-4


【解决方案1】:

如果您正在使用某些软件包,则不得复制他们的 composer.json 文件 - 这将不起作用。

最好的办法是运行一次composer init 为您的项目创建一个初始composer.json 文件,然后运行composer require mikehaertl/phpwkhtmltopdf:~2.0 添加您要使用的这个包。

之后,它应该可以工作了。

【讨论】:

  • 谢谢,这些信息不在任何地方,我认为他们需要认真查看他们的文档
  • 现在的问题是:“他们”是谁,您指的是哪些文档。因为“phpwkhtmltopdf”的安装过程就是这么短的一行:composer require mikehaertl/phpwkhtmltopdf。 Composer 文档也不臃肿:getcomposer.org/doc/00-intro.md#declaring-dependencies
猜你喜欢
  • 2016-01-10
  • 2017-02-06
  • 1970-01-01
  • 2013-07-21
  • 2016-03-05
  • 2017-12-01
  • 1970-01-01
  • 2018-04-05
  • 2017-06-20
相关资源
最近更新 更多