如何更改 Symfony 的控制台脚本名称

How to change Symfony's console script name

我刚刚安装了新的稳定版 Symfony 4,如下所示:

composer create-project symfony/website-skeleton .

我想将控制台脚本名称 bin/console 重命名为 bin/symfony。怎么做?如果我只是重命名它,在 composer install 之后我得到一个错误:

Script cache:clear returned with error code 1

!! Could not open input file: bin/console

显然这来自 post 安装脚本:

"scripts": {
    "auto-scripts": {
        "cache:clear": "symfony-cmd",
        "assets:install --symlink --relative %PUBLIC_DIR%": "symfony-cmd"
    },
    "post-install-cmd": [
        "@auto-scripts"
    ],

如何让它正常工作?我已经检查过 how to override Symfony's default structure,但没有发现任何相关内容。

您的错误与 Symfony Flex 有关。如果您指定 "symfony-cmd",它将查找 "bin/console"。但它只是一个快捷方式,您可以将其更改为以下内容:

"scripts": {
    "auto-scripts": {
        "bin/symfony cache:clear": "script",
        "bin/symfony assets:install --symlink --relative %PUBLIC_DIR%": "script"
    }
}