记录下非composer require的直接加载类
线上版本较低, 使用composer require,要么提醒php版本低,要么提醒composer低
因为又是比较重要的项目, 怕升级出问题,就直接下载的SDK,使用时会提示Class ‘’ not fond,找到的解决方法,在composer.json->autoload->classmap,添加该SDK的第一级命名空间名,比如 SDK里某个文件命名空间是Barcodes\BarcodeBar,那就在classmap添加Barcodes,如下
,然后使用命令composer dump-autoload,这个命令好像是 对 composer autoload自动加载性能优化,具体功能不明白, 但能让我的这个SDK使用起来.
参考文档:blog.csdn.net/wxf3439/article/deta...
本作品采用《CC 协议》,转载必须注明作者和本文链接
如果你使用的包遵守 PSR-4 的话,那你就应该用 autoload.psr-4 下添加更为合适。
composer dump-autoload
这个的作用是告诉 php 以什么规则来自动加载php 文件不用命令不更新, 也可以直接手动修改上面的文件,同样可以达到相同的效果。
dump-autoload,顾名思义,dump是“落盘”的意思,autoload是composer.json 中的配置项
"autoload":{}
, 执行后应该是无论是什么加载方式都会进入autoload_classmap.php
,因为此种加载方式是最高效的。还有一个办法,如果一个包不能被require
进项目,可以在文件开始处require_once '包路径/vendor/autoload.php';
就可以 use 了。博客:Laravel Composer 自动加载原理