laravel 5.5:php artisan tinker:ErrorException:目录不为空[重复]

Posted

技术标签:

【中文标题】laravel 5.5:php artisan tinker:ErrorException:目录不为空[重复]【英文标题】:laravel 5.5 : php artisan tinker : ErrorException : Directory not empty [duplicate] 【发布时间】:2018-03-29 19:35:34 【问题描述】:

我正在使用窗户。 ...在我的 CMD 中,正在使用 tinker、myql、serve 等...并且它们都运行良好...

突然,当我退出 tinker 并再次进入 tinker 时...出现此错误

[ErrorException] rmdir(C:\Users\robert\AppData\Local\Temp\php-xdg-runtime-dir-fallback-): Directory not empty

那果然,我试过删除,不能 我尝试将文件夹重命名为其他名称,它有效...“php artisan tinker”有效...但我无法运行通常的命令 $user = App\User::all(); 然后我退出......然后再次进入修补匠......再次 [ErrorException] rmdir(C:\Users\robert\AppData\Local\Temp\php-xdg-runtime-dir-fallback-): Directory not empty

首先,我搜索了类似的问题,但解决方案对我不起作用 (PHP Artisan Tinker not working with Laravel 5.5.16)

其次,我尝试制作 laravel new NewProject ,运行 tinker... 还是一样的 ErrorException

第三,我尝试了composer updatecomposer require laravel/tinker ...然后在config/app.php => providers 中添加Laravel\Tinker\TinkerServiceProvider::class, .... 仍然是相同的ErrorException

顺便说一句,这是全长错误

``` php artisan tinker -vvv --ansi ? [37;41m ?[39;49m ?[37;41m [错误异常] ?[39;49m ?[37;41m rmdir(C:\Users\robert\AppData\Local\Temp\php-xdg-runtime-dir-fallback-): 目录不为空 ?[39;49m ?[37;41m ?[39;49m

?[33mException trace:?[39m
 () at ?[32mC:\xampp\htdocs\blog\vendor\dnoegel\php-xdg-base-dir\src\Xdg.php:110?[39m
 Illuminate\Foundation\Bootstrap\HandleExceptions->handleError() at ?[32mn/a:n/a?[39m
 rmdir() at ?[32mC:\xampp\htdocs\blog\vendor\dnoegel\php-xdg-base-dir\src\Xdg.php:110?[39m
 XdgBaseDir\Xdg->getRuntimeDir() at ?[32mC:\xampp\htdocs\blog\vendor\psy\psysh\src\Psy\ConfigPaths.php:139?[39m
 Psy\ConfigPaths::getRuntimeDir() at ?[32mC:\xampp\htdocs\blog\vendor\psy\psysh\src\Psy\Configuration.php:348?[39m
 Psy\Configuration->getRuntimeDir() at ?[32mC:\xampp\htdocs\blog\vendor\psy\psysh\src\Psy\Shell.php:173?[39m
 Psy\Shell->getDefaultCommands() at ?[32mC:\xampp\htdocs\blog\vendor\symfony\console\Application.php:1163?[39m
 Symfony\Component\Console\Application->init() at ?[32mC:\xampp\htdocs\blog\vendor\symfony\console\Application.php:431?[39m
 Symfony\Component\Console\Application->add() at ?[32mC:\xampp\htdocs\blog\vendor\psy\psysh\src\Psy\Shell.php:134?[39m
 Psy\Shell->add() at ?[32mC:\xampp\htdocs\blog\vendor\symfony\console\Application.php:415?[39m
 Symfony\Component\Console\Application->addCommands() at ?[32mC:\xampp\htdocs\blog\vendor\laravel\tinker\src\Console\TinkerCommand.php
:54?[39m
 Laravel\Tinker\Console\TinkerCommand->handle() at ?[32mn/a:n/a?[39m
 call_user_func_array() at ?[32mC:\xampp\htdocs\blog\vendor\laravel\framework\src\Illuminate\Container\BoundMethod.php:29?[39m
 Illuminate\Container\BoundMethod::Illuminate\Container\closure() at ?[32mC:\xampp\htdocs\blog\vendor\laravel\framework\src\Illumina
te\Container\BoundMethod.php:87?[39m
 Illuminate\Container\BoundMethod::callBoundMethod() at ?[32mC:\xampp\htdocs\blog\vendor\laravel\framework\src\Illuminate\Container\Bo
undMethod.php:31?[39m
 Illuminate\Container\BoundMethod::call() at ?[32mC:\xampp\htdocs\blog\vendor\laravel\framework\src\Illuminate\Container\Container.php
:549?[39m
 Illuminate\Container\Container->call() at ?[32mC:\xampp\htdocs\blog\vendor\laravel\framework\src\Illuminate\Console\Command.php:180?[
39m
 Illuminate\Console\Command->execute() at ?[32mC:\xampp\htdocs\blog\vendor\symfony\console\Command\Command.php:262?[39m
 Symfony\Component\Console\Command\Command->run() at ?[32mC:\xampp\htdocs\blog\vendor\laravel\framework\src\Illuminate\Console\Command
.php:167?[39m
 Illuminate\Console\Command->run() at ?[32mC:\xampp\htdocs\blog\vendor\symfony\console\Application.php:888?[39m
 Symfony\Component\Console\Application->doRunCommand() at ?[32mC:\xampp\htdocs\blog\vendor\symfony\console\Application.php:224?[39m
 Symfony\Component\Console\Application->doRun() at ?[32mC:\xampp\htdocs\blog\vendor\symfony\console\Application.php:125?[39m
 Symfony\Component\Console\Application->run() at ?[32mC:\xampp\htdocs\blog\vendor\laravel\framework\src\Illuminate\Console\Application
.php:88?[39m
 Illuminate\Console\Application->run() at ?[32mC:\xampp\htdocs\blog\vendor\laravel\framework\src\Illuminate\Foundation\Console\Kernel.
php:121?[39m
 Illuminate\Foundation\Console\Kernel->handle() at ?[32mC:\xampp\htdocs\blog\artisan:37?[39m

```

有人可以帮忙吗? 谢谢

【问题讨论】:

我在 laravel 5.3 中遇到了同样的问题。我刚刚删除了 php-xdg-runtime-dir-fallback- 中的 psysh 文件夹,它暂时可以工作。 临时是什么意思?你知道为什么会这样吗? 不,我不知道。 【参考方案1】:

编辑:不再需要以下内容。 0.8.13 版已经发布并修复了该问题。


Laravel 5.5 中的同样问题。我只是降级到以前版本的 Psy Shell 直到它通过进入项目目录并进入修复它

composer require psy/psysh:0.8.11

在命令行降级到 Psy Shell 的先前版本。他们最终会修复它,然后我会再次更新到新版本。

【讨论】:

已经修复了!在你忘记之前从你的作曲家依赖中删除它;) 完成。谢谢@bobthecow。这是一个非常棒的贝壳。感谢您的努力。【参考方案2】:

这是 Windows 上底层库的错误。请参阅bobthecow/psysh#430 了解更多信息和临时修复,直到发布解决方法。

【讨论】:

谢谢!在composer update 之后它又可以工作了。【参考方案3】:

我想我刚刚找到了解决方案......它可能不是最好的......或者临时解决方案,我猜

我基本上每次在tinker之前手动删除psysh文件夹

rmdir c:\Users\robert\AppData\Local\Temp\php-xdg-runtime-dir-fallback-\psysh 然后修补

哦,顺便说一句,上面我提到我已经尝试删除但失败了,但是当我尝试删除 psysh 而不是 "php-xdg-runtime-dir-fallback-" 时,它起作用了......结果修补程序命令等也可以正常工作...不过,您仍然必须手动删除。

任何有更好解决方案的人,请在下面添加,我真的很想知道为什么或怎么会发生?最重要的是更持久的解决方案。

我已经发布了这个问题或在 laracasts 中搜索了类似的问题,但还没有答案。

干杯

【讨论】:

以上是关于laravel 5.5:php artisan tinker:ErrorException:目录不为空[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何手动使用 composer, artisan ...(Laravel) php 命令

php Laravel Artisan迁移实例

php Laravel Artisan Migrate创建领域

无法 php artisan 迁移 - Laravel

laravel 自动删除 php artisan serve 上的 server.php

如何使用 Artisan 命令 (PHP) 在 Laravel 5.2 中创建 RESTful 资源控制器