laravel是怎么做到 composer dump-autoload 不覆盖 vendor/autoload_classmap.php文件的?
我看 laravel 的 composer.json 文件 autoload 也没配置 vendor/autoload_classmap.php 里的映射关系,正常来说,如果没有配置,执行 composer dump-autoload 这个文件的数组不是会被清空吗?但是我执行后,映射关系还在,laravel 是怎么做到不被清空的呢,有什么配置吗?
我看 laravel 的 composer.json 文件 autoload 也没配置 vendor/autoload_classmap.php 里的映射关系,正常来说,如果没有配置,执行 composer dump-autoload 这个文件的数组不是会被清空吗?但是我执行后,映射关系还在,laravel 是怎么做到不被清空的呢,有什么配置吗?
1 Comment
如果你没有在root composer.json里配置scripts,那composer dump-autoload这个命令和laravel是无关的
在执行dump-autoload命令后(不带参数)
使用classmap方式加载的包中所有类映射会放在autoload_classmap.php文件;
使用psr-0方式加载的包的namespace会放到autoload_namespaces.php文件(现在不推荐用这个了);
使用psr-4方式加载的包的namespace会放到autoload_psr4.php文件;
如果是带-o参数(--optimize)执行命令,所有类映射都会放到autoload_classmap.php文件,官方推荐在生产环境带上这个参数