server:run 例外 「server」名前空間にコマンドが定義されていません 質問する

server:run 例外 「server」名前空間にコマンドが定義されていません 質問する

を使用してサーバーを実行すると、php bin/console server:run次のエラーが発生します。There are no commands defined in the "server" namespace.

コマンドを実行すると、php bin/console次の出力が表示されます。サーバー: コマンドは表示されません。

Symfony 3.3.0-DEV (kernel: app, env: dev, debug: true)

Usage:
  command [options] [arguments]

Options:
  -h, --help            Display this help message
  -q, --quiet           Do not output any message
  -V, --version         Display this application version
      --ansi            Force ANSI output
      --no-ansi         Disable ANSI output
  -n, --no-interaction  Do not ask any interactive question
  -e, --env=ENV         The environment name [default: "dev"]
      --no-debug        Switches off debug mode
  -v|vv|vvv, --verbose  Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug

Available commands:
  about                                   Displays information about the current project
  help                                    Displays help for a command
  list                                    Lists commands
 app
  app:download-beameemail                 download beame emails.
  app:download-businessunits              download businessunits.
  app:download-drivers                    download drivers.
  app:download-fleets                     download fleets.
  app:download-fmpositions                download fm_positions.
  app:download-fmtrips                    download fm_trips.
  app:download-fmunits                    download fm_units.
  app:download-skypositions               download skytrack_positions.
  app:download-skyunits                   download skytrack_units.
  app:download-vehicles                   download vehicles.
 assets
  assets:install                          Installs bundles web assets under a public web directory
 cache
  cache:clear                             Clears the cache
  cache:pool:clear                        Clears cache pools
  cache:warmup                            Warms up an empty cache
 config
  config:dump-reference                   Dumps the default configuration for an extension
 debug
  debug:config                            Dumps the current configuration for an extension
  debug:container                         Displays current services for an application
  debug:event-dispatcher                  Displays configured listeners for an application
  debug:router                            Displays current routes for an application
  debug:swiftmailer                       [swiftmailer:debug] Displays current mailers for an application
  debug:translation                       Displays translation messages information
  debug:twig                              Shows a list of twig functions, filters, globals and tests
 doctrine
  doctrine:cache:clear-collection-region  Clear a second-level cache collection region.
  doctrine:cache:clear-entity-region      Clear a second-level cache entity region.
  doctrine:cache:clear-metadata           Clears all metadata cache for an entity manager
  doctrine:cache:clear-query              Clears all query cache for an entity manager
  doctrine:cache:clear-query-region       Clear a second-level cache query region.
  doctrine:cache:clear-result             Clears result cache for an entity manager
  doctrine:database:create                Creates the configured database
  doctrine:database:drop                  Drops the configured database
  doctrine:database:import                Import SQL file(s) directly to Database.
  doctrine:ensure-production-settings     Verify that Doctrine is properly configured for a production environment.
  doctrine:generate:crud                  [generate:doctrine:crud] Generates a CRUD based on a Doctrine entity
  doctrine:generate:entities              [generate:doctrine:entities] Generates entity classes and method stubs from your mapping information
  doctrine:generate:entity                [generate:doctrine:entity] Generates a new Doctrine entity inside a bundle
  doctrine:generate:form                  [generate:doctrine:form] Generates a form type class based on a Doctrine entity
  doctrine:mapping:convert                [orm:convert:mapping] Convert mapping information between supported formats.
  doctrine:mapping:import                 Imports mapping information from an existing database
  doctrine:mapping:info                   
  doctrine:query:dql                      Executes arbitrary DQL directly from the command line.
  doctrine:query:sql                      Executes arbitrary SQL directly from the command line.
  doctrine:schema:create                  Executes (or dumps) the SQL needed to generate the database schema
  doctrine:schema:drop                    Executes (or dumps) the SQL needed to drop the current database schema
  doctrine:schema:update                  Executes (or dumps) the SQL needed to update the database schema to match the current mapping metadata.
  doctrine:schema:validate                Validate the mapping files.
 fos
  fos:js-routing:debug                    Displays currently exposed routes for an application
  fos:js-routing:dump                     Dumps exposed routes to the filesystem
 generate
  generate:bundle                         Generates a bundle
  generate:command                        Generates a console command
  generate:controller                     Generates a controller
 lint
  lint:twig                               Lints a template and outputs encountered errors
  lint:xliff                              Lints a XLIFF file and outputs encountered errors
  lint:yaml                               Lints a file and outputs encountered errors
 router
  router:match                            Helps debug routes by simulating a path info match
 security
  security:check                          Checks security issues in your project dependencies
  security:encode-password                Encodes a password.
 swiftmailer
  swiftmailer:email:send                  Send simple email message
  swiftmailer:spool:send                  Sends emails from the spool
 translation
  translation:update                      Updates the translation file

実行して修正しようとしましたがcomposer require symfony/symfonycomposer updateまだ表示されません。他に試せる方法はありますか?

下の編集は私のPHP情報ですphp -version

PHP 7.0.15-0ubuntu0.16.04.4 (cli) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.0.15-0ubuntu0.16.04.4, Copyright (c) 1999-2017, by Zend Technologies
    with Xdebug v2.4.0, Copyright (c) 2002-2016, by Derick Rethans

編集2

ディレクトリvendor\symfon\symfony\src\Symfony\Bundle\FrameworkBundle\Commandが存在し、以下のファイルが含まれています

AboutCommand.php
AbstractConfigCommand.php
AssetsInstallCommand.php
CacheClearCommand.php
CachePoolClearCommand.php
CacheWarmupCommand.php
ConfigDebugCommand.php
ConfigDumpReferenceCommand.php
ContainerAwareCommand.php
ContainerDebugCommand.php
EventDispatcherDebugCommand.php
RouterDebugCommand.php
RouterMatchCommand.php
TranslationDebugCommand.php
TranslationUpdateCommand.php
WorkflowDumpCommand.php
XliffLintCommand.php
YamlLintCommand.php

ベストアンサー1

コメントで述べたように、S3.3 ではサーバー コマンドが独自の WebServerBundle に移動されました。バンドルを有効にするには、AppKernel.php を少し編集する必要があります。3.3 が実際にリリースされ、人々がアップグレードを試みたら、他の多くの開発者もこれに遭遇するのではないかと思います。

約束はできませんが、AppKernel.php を次のように更新してみてください。

    if (in_array($this->getEnvironment(), ['dev', 'test'], true)) {
        $bundles[] = new Symfony\Bundle\DebugBundle\DebugBundle();
        $bundles[] = new Symfony\Bundle\WebProfilerBundle\WebProfilerBundle();
        $bundles[] = new Sensio\Bundle\DistributionBundle\SensioDistributionBundle();

        if ('dev' === $this->getEnvironment()) {
            $bundles[] = new Sensio\Bundle\GeneratorBundle\SensioGeneratorBundle();
            $bundles[] = new Symfony\Bundle\WebServerBundle\WebServerBundle();
        }
    }

試すための適切なテスト プロジェクトはありませんが、少なくともコマンドは表示されるはずです。

誰かが疑問に思っているかもしれないので言っておくと、私がやったことは、新しい開発プロジェクトをインストールして、少し調べてみただけです。

composer create-project symfony/framework-standard-edition s33 "3.3.*" --stability=dev

これも見つけましたが、AppKernel.phpを更新する必要性については触れられていません。http://symfony.com/blog/new-in-symfony-3-3-webserverbundle

アップグレード ガイドより:3.4 のアップグレード

server:run、server:start、server:stop、server:statusコンソールコマンドは専用のバンドルに移動されました。composer.jsonでsymfony/web-server-bundleをrequireし、Symfony\Bundle\WebServerBundle\WebServerBundle を登録するこれらを使用するには、AppKernel に追加してください。

composer.json に symfony/symfony が含まれている限り、Web サーバー バンドルを追加する必要はありません。AppKernel ファイルを調整するだけです。

おすすめ記事