关于 Laravel vendor目录下变更某个扩展的文件夹名称后

用composer 安装了一个 TCPDF的扩展 默认路径是 /vendor/tecnick.com/tcpdf
这个路径带了个.com 感觉很不爽 所以把tecnick.com这层目录删了 变成了 /vendor/tcpdf
然后 new TCPDF 的时候log日志里就报加载不到类的错误了
[2015-06-01 15:07:47] production.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Class 'TCPDF' not found' in D:\www\app\app\models\CreditAssignment\CreditAssignmentDetail.php:639
Stack trace:

0 [internal function]: Illuminate\Exception\Handler->handleShutdown()

1 {main} [] []



想问下 如果变更了 vendor下某个扩展的文件夹目录结构 如何才能从新指向新的目录呢?

这个是 扩展的安装地址
"require": {
    "tecnick.com/tcpdf": "dev-master",
已邀请:

xlimit

赞同来自: 娃娃脾气

1.不建议直接改别人的扩展,以后一旦composer update项目,你所做的修改就没用了,而composer update是必然会再你以后的开发中使用的。
2.如果硬是要改别写的扩展,你应该为该扩展单独创建一个项目,然后以你自己的名义上传到 https://packagist.org/ 。然后在composer.json中修改该扩展的引用为你自己创建的。
3. Laravel5使用psr-4规范,你该了目录结构,就应该把相关类的命名空间修改成符合psr-4规范。
4. 实在不推荐因为非功能性问题去修改一个扩展。其过程麻烦不说,你以后还得维护这个扩展,得不偿失。

ps.
因为看名字不爽而修改一个扩展,你是有多蛋疼。

Mr_Old

赞同来自:

好像composer有个设置为私有包的功能

要回复问题请先登录注册