Laravel手动添加第三方SDK vendor 类自动加载

如果遇到成年老项目,或者不规范开发导致不能正常使用 composer require xxxx,可以用如下方式解决,以七牛云SDK为例进行处理。

假设项目位置为:~/project,七牛云SDK位置为:~/qiniu

github拉取项目,或者直接下载sdk包

$ cd ~/project
# 直接下载的sdk包,github拉取会少一级目录
$ mv ~/qiniu vender/qiniu
$ cd vender && tree -L 3
├── qiniu
│   └── php-sdk
│       ├── CHANGELOG.md
│       ├── CONTRIBUTING.md
│       ├── LICENSE
│       ├── README.md
│       ├── autoload.php
│       ├── composer.json
│       ├── examples
│       ├── phpunit.xml.dist
│       ├── src
│       └── tests

更改项目根目录下的composer.json,以更改classmap为例

// 位置 ~/project/composer.json

"autoload": {
        // 需要引入包的位置
		"classmap": [
			"vendor/qiniu/php-sdk"
		],
		// 需要独立引入文件的位置
		"files": [
			"vendor/qiniu/php-sdk/src/Qiniu/functions.php"
		]
	},

更新自动加载文件

$ cd ~/project
$ composer dump-autoload -o

你可能感兴趣的:(php,laravel,php,composer)