Laravel 4:致命错误:在 autoload.php 中找不到类 'Patchwork\Utf8\Bootup'
Posted
技术标签:
【中文标题】Laravel 4:致命错误:在 autoload.php 中找不到类 \'Patchwork\\Utf8\\Bootup\'【英文标题】:Laravel 4: Fatal error: Class 'Patchwork\Utf8\Bootup' not found in autoload.phpLaravel 4:致命错误:在 autoload.php 中找不到类 'Patchwork\Utf8\Bootup' 【发布时间】:2014-08-18 06:31:51 【问题描述】:我将 "cviebrock/image-validator": "1.0.*" 添加到 composer.json 的 require 部分。之后,我运行 composer update,我收到了这个致命错误。
:::错误:::
Fatal error: Class 'Patchwork\Utf8\Bootup' not found in F:\xampp\htdocs\project\
bootstrap\autoload.php on line 46
Script php artisan clear-compiled handling the post-update-cmd event returned wi
th an error
[RuntimeException]
Error Output:
update [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--no-dev] [--lock]
[--no-plugins] [--no-custom-installers] [--no-scripts] [--no-progress] [--with-
dependencies] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [packages1] ... [
packagesN]
:::END of ERROR:::
:::COMPOSER.JSON 需要部分:::
"require":
"intervention/image": "2.*",
"cviebrock/image-validator": "1.0.*"
,
我需要帮助来纠正这个致命错误。
感谢和问候,
迈克尔·桑玛
【问题讨论】:
我从 github [link] (github.com/artdarek/oauth-4-laravel/issues/30) 得到这个。他们给出的解决方案是将“oauth 依赖”添加到 require 部分。现在,我不知道要添加的“oauth 依赖项”的确切行。谁能帮我这个?我想尝试在 github 中找到的这个解决方案。谢谢。 【参考方案1】:老兄,你只需要这样做:
composer require patchwork/utf8
【讨论】:
【参考方案2】:我用composer dump-autoload
和composer update
解决了这个问题
之后就可以了
但是,如果您遇到更多问题,请尝试
删除供应商文件夹或只是将其重命名为备份,以防它失败,如mv vendor ve
然后
Delete composer.lock
运行命令composer clearcache(或clear-cache) 运行作曲家安装
你很高兴。
【讨论】:
【参考方案3】:这个错误在我看来好像没有安装patchwork/utf8
包。
在您的供应商文件夹中查看该包是否存在,或者在您的 composer.json 文件的 require 部分中添加:"patchwork/utf8": "1.1.*"
,然后执行composer update
。
【讨论】:
【参考方案4】:我很确定你从 git 中提取了你的应用程序?如果您仔细查看 .gitignore
文件,您会发现 /vendor
是 git 被告知忽略的文件/文件夹之一。您需要从 .gitignore
IF 中删除您正在开发的 /vendor
、composer.lock
和 composer.phar
。
此外,如果您通过 FTP 或 ssh 导航到 /vendors
文件夹,您将看到它只有在您的 composer.json 文件中列出的文件夹
"require":
是供应商文件夹中的那些。
一旦你运行 composer update
和 composer install
你应该没问题。
【讨论】:
您应该永远将您的供应商文件夹放在 git 下。你应该有你的 composer.json,它会处理一切。 您确实提到了“从 .gitignore 中删除 /vendor、composer.lock 和 composer.phar”。这是一个坏主意。以composer.lock为例,它基本上只是composer.json的一个保存版本。如果您有 json,则不需要锁。 phar 永远不会改变并且是二进制文件,为什么要在 git 下?并且 vendor 永远不应该通过运行 composer 来更改,并且更改由 composer.json 中的更改定义 - 所以,同样,composer.json 就足够了。 好像英语不是你的第一语言。就像我之前提到的,没有人向 git 或任何其他 svn 发布任何内容。我的回答是解决问题。我的意思是我在那里所说的一切,因为它有效。请在输入前阅读并理解对话。在您的情况下,您的输入与此处讨论的内容不准确。我可以理解如果这是一个被推送到 github 的项目,我说从.gitignore
中删除 /vendor
你的反对票是有道理的。在这种情况下,你表现出无知。
我不知道您所说的“git 或任何其他 svn”是什么意思,特别是“一个 svn”。您可能指的是 VCS(版本控制系统)。 Git 和 SVN(Subversion)一样是一个 VCS。说 Git 是 svn 是没有意义的。不管你是否使用像 Github 这样的遥控器,将 /vendor、composer.lock,phar 置于版本控制之下(在 git、SVN 或任何其他 CVS 中)1)都是没有意义的,因为原因上面,2) 浪费了修订历史中的空间,3) 用不必要的提交和二进制文件使修订历史混乱。【参考方案5】:
我刚刚在 app.php 中评论了 'Patchwork\Utf8\Utf8ServiceProvider' 并且它起作用了
【讨论】:
【参考方案6】:我遇到了同样的问题,因为当我跑步时 php artisan db:seed --class=PostsTableSeeder
它开始删除laravel,symfony等。我不明白为什么?(可能是我当时只包含了我的composer.json"require":
"fzaninotto/faker": "1.3.*@dev"
,
)
所以我做了什么,我再次更新了我的 composer.json 并运行 composer update --dev。 composer.json 为
"require":
"laravel/framework": "4.2.*",
"way/generators": "~2.0",
"patchwork/utf8": "1.1.*",
"fzaninotto/faker": "1.3.*@dev"
,
这很有效,因为它再次下载了所有内容。
【讨论】:
我做了同样的事情,它奏效了。它再次下载了所有内容。但是,为什么会这样呢?如果每次发生这种情况我都必须遵循这个解决方案,那么问题仍然存在。 @michaelsangma 我不知道另一种解决方案,这就是为什么我也在 *** 和谷歌上搜索的原因。最后我来到了这个解决方案。如果您有更好的,请在此处发布。以上是关于Laravel 4:致命错误:在 autoload.php 中找不到类 'Patchwork\Utf8\Bootup'的主要内容,如果未能解决你的问题,请参考以下文章
安装 Sylius 时出错:“PHP 致命错误:require():无法打开所需的 autoload.php”
Laravel 4:PHP 致命错误:调用未定义的方法 Blueprint::int()
如何解决错误“致命错误:require(): Failed opening required '../vendor/autoload.php' (include_path='C:\xampp\php\
PHP 致命错误:未捕获的错误:即使在调用 autoload.php 后也找不到类“Google_Service_Gmail_Resource_Users”?