【发布时间】:2014-04-23 01:48:21
【问题描述】:
我有一台安装了 PEAR 的开发机器(在 /usr/share/php/PEAR.php 中)和一个没有安装 PEAR 的生产系统。
在生产机器上,我收到了这个在开发机器上没有的错误:
A PHP Error was encountered
Severity: Warning
Message: require_once(PEAR.php): failed to open stream: No such file or directory
Filename: Archive/Tar.php
Line Number: 42
Fatal error: require_once(): Failed opening required 'PEAR.php' (include_path='.:') in /www/application/vendor/pear/archive_tar/Archive/Tar.php on line 42
请参见此处的第 42 行:https://github.com/pear/Archive_Tar/blob/master/Archive/Tar.php#L42
我不想在生产机器上安装 PEAR,因为它是在系统范围内安装的。如果我可以从作曲家本身安装 PEAR.php 及其所有相关文件,这对我来说似乎更干净。
我能找到的所有与 Composer 和 PEAR 相关的问题都与从 Composer 安装软件包有关。
但我想做的是让 Composer 从项目的供应商目录中自动加载 PEAR 代码,这样我就不必在生产系统上全局安装 PEAR。
这里有一个几乎相同的问题:How do I get PEAR.php with Composer?
但看起来他已经接受了自己的答案,甚至没有解决问题。
我的 composer.json 看起来像:
{
"require": {
"pear/archive_tar": "*",
}
}
看来,如果我的建议可行,我会添加“pear/pear”或需要的东西,它会将 PEAR 代码本身安装在项目目录中,但我找不到这样的包。
【问题讨论】:
标签: php composer-php pear