当我尝试为artisan创建别名时,收到了以下错误消息:[设置|工具|命令行工具支持]->添加->基于Symfony控制台的工具
问题
Failed to parse output as xml: Error on line 4: Content is not allowed in prolog..
命令
C:'xampp'php'php.exe C:'xampp'htdocs'laratest'artisan list --xml
输出
[Symfony'Component'Console'Exception'RuntimeException]
The "--xml" option does not exist.
好的,我知道,问题出在哪里,但我找不到任何解决办法。谢谢你的提示!
对Laravel文件夹下的"artisan"文件进行临时修改就可以了。(正在处理PhpStorm 10.0.3)
if( isset($argv[1]) && $argv[1] == 'list' &&
isset($argv[2]) && $argv[2] == '--xml' ) {
$argv[2] = '--format=xml';
$_SERVER['argv'] = $argv;
}
require __DIR__.'/bootstrap/autoload.php';
现在,您可以添加基于Symfony的"artisan"命令行工具支持,并根据需要删除这些行。
对于所有受影响的人来说,这是删除了对–xml支持的提交:https://github.com/symfony/console/commit/6d6d9031b9148fed0e2aacb98ac23ce6168ba7ac
只需恢复ListCommand.php 中的更改
它在2.7版本中工作
没有--xml
选项,运行以下命令时会出现此错误:
"--xml"选项不存在。
因此,在这种情况下,您应该执行以下操作:
php artisan help list
你会得到所有可用参数的列表
现在你会知道你需要使用:
php artisan list --format=xml
而不是:
php artisan list --xml
编辑
我已经在PhpStorm 10.0.3 中验证过了
作为工具路径,您可以在您的情况下粘贴:
C:'xampp'php'php.exe C:'xampp'htdocs'laratest'artisan list --format=xml
并且它将工作
在添加命令行工具之前更新composer:
composer update