___ answer20573749 ___
Löschen Sie den Cache für die Entwicklungsumgebung. Es sollte es beheben, wenn der Dienst wirklich existiert. Navigiere zu deinem Projektverzeichnis im Terminal und tippe:
%code%
___ qstntxt ___
Ich habe das Symfony2-Plugin für Phpstorm installiert, aber ich kann die IDE nicht dazu bringen, diese existierenden Dienste oder andere injizierte Objekte zu sehen. Können diese irgendwie behoben werden, so dass die Warnungen weggehen?
___ answer20573713 ___
Überprüfen Sie, ob Ihr Plugin die neueste Version hat. Ich weiß, dass frühere Versionen des Plugins die Dienste nicht automatisch auflösten.
Andernfalls können Sie Folgendes hinzufügen, um der IDE mitzuteilen, welcher Variablentyp %code% ist:
%Vor%
Dadurch erhalten Sie automatische Vervollständigungen, wenn Sie etwas wie " %code% " eingeben.
___ answer32391816 ___
Schließlich habe ich dank der @googol-Hilfe eine Möglichkeit gefunden, Services-Definitionsdateien in benutzerdefinierten Pfaden mit einem YML-Format anzugeben:
Sie müssen nur die %code% -Datei einschließlich des folgenden Tags erstellen oder ändern:
%code%
Du musst den PhpStorm neu starten und das war's! :)
Hier haben Sie meine vollständige %code% Datei als Beispiel:
%code%
Und hier haben Sie eine Feature-Anfrage, um die Möglichkeit hinzuzufügen, diese benutzerdefinierte Pfad-Service-Definition über die Plugin-UI-Einstellungen hinzuzufügen, anstatt die Konfigurationsdatei manuell bearbeiten zu müssen: Ссылка
___ answer20981042 ___
Wenn der Service in XML und nicht in YAML definiert ist, wird die automatische Vervollständigung sofort ausgeführt, ohne dass die @var-Annotation verwendet werden muss.
Sie können diese Beispieldefinition ausprobieren, die Ihnen die automatische Vervollständigung bietet, wenn Sie einen der definierten Dienste verwenden möchten.
%Vor%
)
___ tag123symfony ___ Symfony ist ein Open-Source-PHP-Webentwicklungsframework für PHP 5.5.9+, das sich auf einfache und schnelle Entwicklungszyklen konzentriert und hochmoderne Designmuster und Programmierphilosophien beinhaltet. Symfony sollte nicht mit Symphony CMS verwechselt werden.
Dieses Tag sollte nicht für Fragen zu Symfony 1.x verwendet werden. Bitte verwenden Sie stattdessen das Symfony1-Tag.
___ answer22168954 ___
Es scheint also, dass ich mein Symfony2-Plugin nicht aktiviert habe und das war der Grund, warum nichts mit Symfony zusammenhing. Ich nahm an, dass es nach der Installation standardmäßig aktiviert war. Oh, gut
___ tag123phpstorm ___ JetBrains PhpStorm ist eine kommerzielle IDE für PHP, die auf JetBrains 'IntelliJ IDEA basiert.
PhpStorm bietet einen intelligenten Editor für PHP, HTML, CSS und JavaScript mit Refactoring und On-The-Fly-Code-Analyse.
___ qstnhdr ___ phpstorm symfony2 fehlender Service warning
___ tag123dependencyinjection ___ Ein Entwurfsmuster, um die Kopplung zwischen Komponenten zu reduzieren, indem dynamisch in Abhängigkeiten einer Softwarekomponente injiziert wird, die es benötigt, um zu funktionieren.
___ tag123service ___ Ein Dienst ist eine ausführbare Datei mit langer Laufzeit, die bestimmte Funktionen ausführt und keine Benutzereingriffe erfordert.
___ antwort22409044 ___
Ich hatte ein ähnliches Problem und würde empfehlen, das folgende zu überprüfen ...
-
Wie von @ Marcel vorgeschlagen, überprüfe, ob dein Symfony2-Plugin aktiviert ist ...
1.1. Einstellungen & gt; Symfony2-Plugin
1.2. Überprüfen Sie, ob die Pfade zu diesen Verzeichnissen korrekt sind. Aus irgendeinem Grund hatte ich zwei Symfony-Projekte in einem Projekt, so dass die Standardpfade nicht genau waren.
-
Sie sollten überprüfen, ob der Verweis des Plugins auf Ihren Container-XML-Code korrekt ist, standardmäßig lautet er "app \ cache \ dev \ appDevDebugProjectContainer.xml", da Sie sehen können, dass meins aktualisiert werden muss und Sie den Pfad sehen können jetzt "EXISTS", hieß es "ERROR" vor
2.1. Einstellungen & gt; Symfony2-Plugin & gt; Container
2.2.
-
Dann, gemäß @ Igors Vorschlag, löschen Sie Ihren Cache
___