wake-up-neo.com

server: run Ausnahme Es sind keine Befehle im Namespace "Server" definiert

Wenn ich den Server mit php bin/console server:run starte, erhalte ich die folgende Fehlermeldung .There are no commands defined in the "server" namespace.

Wenn ich den Befehl php bin/console ausführe, erhalte ich folgende Ausgabe. Was zeigt keinen Server: Befehle.

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

Ich habe versucht, das Problem zu beheben, indem Sie composer require symfony/symfony und composer update ausführen, aber es wird immer noch nichts angezeigt. Gibt es noch etwas, das ich ausprobieren kann?

Edit unten ist meine PHP-Info von 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

BEARBEITEN 2

das Verzeichnis vendor\symfon\symfony\src\Symfony\Bundle\FrameworkBundle\Command ist vorhanden und enthält die folgenden Dateien

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
24

Wie in meinem Kommentar erwähnt, wurden die Serverbefehle in S3.3 in ein eigenes WebServerBundle verschoben. Einige Änderungen an AppKernel.php sind erforderlich, um das Bundle zu aktivieren. Ich vermute, dass viele andere Entwickler darauf stoßen könnten, wenn 3.3 veröffentlicht wird und die Leute versuchen, ein Upgrade durchzuführen.

Ich mache keine Versprechungen, versuche aber, AppKernel.php zu aktualisieren mit:

    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();
        }
    }

Ich habe kein gutes Testprojekt, um es anzuprobieren, aber zumindest sollten die Befehle angezeigt werden.

Und für den Fall, dass sich jemand wundert, war alles, was ich getan habe, ein neues Entwicklungsprojekt zu installieren und ein bisschen herumzustöbern.

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

Ich habe das auch gefunden, aber es erwähnt nicht die Notwendigkeit, AppKernel.php zu aktualisieren http://symfony.com/blog/new-in-symfony-3-3-webserverbundle

Im Upgrade-Handbuch: https://github.com/symfony/symfony/blob/3.4/UPGRADE-3.3.md

Die Befehle server: run, server: start, server: stop und server: status console wurden in ein dediziertes Bundle verschoben. Benötigen Sie symfony/web-server-bundle in Ihrer composer.json und registrieren Sie Symfony\Bundle\WebServerBundle\WebServerBundle in Ihrem AppKernel, um sie zu verwenden.

Solange in Ihrer composer.json symfony/symfony enthalten ist, muss das Webserver-Bundle nicht hinzugefügt werden. Müssen nur die AppKernel-Datei anpassen.

49
Cerad

sie müssen diesen Befehl ausführen:

composer req webserver
14
Israel Bazan

führen Sie diesen Befehl aus, bevor Sie den Server starten.

composer require symfony/web-server-bundle --dev
11
Sarath Kumar

Art:

pHP-Bin/Konsole

Sie sehen alle erlaubten Befehle. 

Wenn Sie die Serverbefehle verwenden möchten, müssen Sie sie in Ihrem Projekt eingeben:

komponist erfordert Server --dev

führe es nochmals aus 

pHP-Bin/Konsole

und Sie sollten es sehen und verwenden können.

4
Zenit

Stellen Sie sicher, dass der korrekte APP_ENV in der Umgebung festgelegt ist. In meinem Fall war dies kritisch.

3
Barh

Wie @Barh ​​sagt, müssen Sie APP_ENV=dev in Ihrer .env-Datei haben.

Andernfalls wird Symfony 4 nicht im Dev-Modus ausgeführt.

1
Dinath

ein Upgrade von symfony <3.3 auf symfony> 3.3 führt zu diesem Problem, da der Webserver in ein separates Bundle extrahiert wurde.

daher benötigen Sie dieses Bundle:

composer require symfony/web-server-bundle --dev

und in deinem AppKernel

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

für weitere Informationen: hier überprüfen

1
Sadik anass

Ich hatte das gleiche Problem mit Symfony 4, nachdem ich .env stoßen. Einige Befehle sind auf prod nicht sichtbar.

Sie müssen entweder zu dev wechseln oder: bin/console --env=dev

Und so starten Sie den Server: bin/console --env=dev server:run 0.0.0.0:8005

0
Volmarg Reiso

Entfernen Sie die Datei env.local, falls vorhanden.

Reson: Weil server: run in der Produktionsumgebung nicht ausgeführt wird

0
symi khan
  1. Firewall-Hilfe deaktivieren
  2. running ...... composer clear cache hat geholfen, die Erlaubnis zu erteilen
  3. laufen ...... Composer Req Webserver hat geholfen, meine im Namespace "Server" definierten Befehle zu löschen
0
Fouad Teneson