我刚刚开始使用composer,我添加的第一个库是predis-1.0。安装成功但我发现自己并没有完全遵循官方文件。
文件说:
To use it, just add the following line to your code's bootstrap process: require 'vendor/autoload.php';
但我将供应商目录复制到我的存储库中并添加了require' vendor / autoload.php'。我得到的是PHP错误:
Class 'Predis\Client' not found.
然后我从存储库中删除了vendor目录,并将autoload.php和src目录从predis-1.0复制到了存储库。这一切一切正常。
所以我只是想知道 这是作曲家应该工作的方式吗? 2.我应该将predis-1.0的autoload.php和src目录添加到我的软件存储库中吗?这些足够吗?
提前致谢。
PS:predis-1.0结构:
2015-03-21 21:18 <DIR> .
2015-03-21 21:18 <DIR> ..
2015-01-02 20:54 312 autoload.php
2015-03-21 09:43 <DIR> bin
2015-01-02 20:54 39,331 CHANGELOG.md
2015-01-02 20:54 882 composer.json
2015-03-21 10:50 33,695 composer.lock
2015-01-02 20:54 2,649 CONTRIBUTING.md
2015-03-21 21:18 <DIR> examples
2015-01-02 20:54 8,537 FAQ.md
2015-01-02 20:54 1,067 LICENSE
2015-01-02 20:54 903 package.ini
2015-01-02 20:54 17,787 README.md
2015-03-21 09:43 <DIR> src
2015-03-21 21:09 <DIR> vendor
2015-01-02 20:54 10 VERSION
答案 0 :(得分:0)
你不应该搬东西。这会让你遇到麻烦。
Composer将依赖项提取到定义的vendor-dir中。故事结束。
-
在你的项目中你有一个composer.json。 此文件需要predis 1.0。
在您的应用程序引导程序中,您可以简单地包含require 'vendor/autoload.php';
。
这意味着,您加载了Composer自动加载器,其中包括所有依赖项,包括predis。
运行composer install
- 获取依赖项,创建自动加载。
然后运行您的应用程序。完成。