我尝试使用 Forge+DigitalOcean 发布我的新 Laravel 项目,但由于 php artisan optimize
收到错误消息(我们无法在您的服务器上安装项目)命令返回 Invalid filename provided.
错误。
所以我修改了 .env 文件并将 APP_DEBUG 设置为 false 并尝试在本地运行该命令。我收到以下错误:
php artisan optimize -v
Generating optimized class loader Compiling common classes [RuntimeException] Invalid filename provided.
Exception trace: () at /home/bubut/Code/TalalAttendance/vendor/classpreloader/classpreloader/src/ClassPreloader.php:105 ClassPreloader\ClassPreloader->getCode() at /home/bubut/Code/TalalAttendance/vendor/laravel/framework/src/Illuminate/Foundation/Console/OptimizeCommand.php:89 Illuminate\Foundation\Console\OptimizeCommand->compileClasses() at /home/bubut/Code/TalalAttendance/vendor/laravel/framework/src/Illuminate/Foundation/Console/OptimizeCommand.php:70 Illuminate\Foundation\Console\OptimizeCommand->fire() at n/a:n/a call_user_func_array() at /home/bubut/Code/TalalAttendance/bootstrap/cache/compiled.php:1138 Illuminate\Container\Container->call() at /home/bubut/Code/TalalAttendance/vendor/laravel/framework/src/Illuminate/Console/Command.php:150 Illuminate\Console\Command->execute() at /home/bubut/Code/TalalAttendance/vendor/symfony/console/Command/Command.php:258 Symfony\Component\Console\Command\Command->run() at /home/bubut/Code/TalalAttendance/vendor/laravel/framework/src/Illuminate/Console/Command.php:136 Illuminate\Console\Command->run() at /home/bubut/Code/TalalAttendance/vendor/symfony/console/Application.php:827 Symfony\Component\Console\Application->doRunCommand() at /home/bubut/Code/TalalAttendance/vendor/symfony/console/Application.php:191 Symfony\Component\Console\Application->doRun() at /home/bubut/Code/TalalAttendance/vendor/symfony/console/Application.php:122 Symfony\Component\Console\Application->run() at /home/bubut/Code/TalalAttendance/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:100 Illuminate\Foundation\Console\Kernel->handle() at /home/bubut/Code/TalalAttendance/artisan:36
最佳答案
Laravel 允许您指定要编译的其他文件 - 通常是应用程序中每个请求使用的文件。
文件列表在 files
数组中的 /config/compile.php
中指定。如果您在那里指定了一个文件,但它不存在(或者位置错误),那么 artisan 在尝试编译它时会抛出该错误。
同样的事情发生在我身上,从列表中删除不存在的文件解决了我的问题。
关于laravel-5 - php artisan optimize 返回(提供的文件名无效。),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32933318/