Ich habe beim Starten von JBoss heute von einer Befehlszeile die folgende Fehlermeldung erhalten:
'findstr' is not recognized as an internal or external command
Bitte google es, Sie können viele Antworten finden. Aber wie unten beschrieben, um das Problem zu beheben. Fügen Sie den folgenden Wert zu Rechtsklick auf Mein Compuer hinzu -> Erweitert -> Umgebungsvariablen -> Systemvariablen -> Pfadvariable auswählen -> fügen Sie den folgenden Wert hinzu.
C:\WINDOWS\system32
Es sollte mit dieser Änderung funktionieren.
Bitte gehen Sie die einfachsten Schritte durch: -
C:\Windows\system32\
und kopieren Sie die findstr.exe
-Datei.C:\Program Files\Java\jdk1.6.0_24\bin
ein.für mich funktioniert es, wenn ich findstr (von windows/system32) nach wildfly/bin kopiert habe
Sie können das Verzeichnis auch hart codieren, indem Sie 'findstr' durch 'C:\Windows\system32\findstr' ersetzen. Dies ist nützlich, wenn Sie Systeme mit eingeschränkten Benutzerberechtigungen verwenden.
Überprüfen Sie, ob% SystemRoot% eine Auswertung durchführt (geben Sie set path in eine Eingabeaufforderung ein, Sie sollten nicht% SystemRoot% sehen, sondern diesen tatsächlichen Pfad). Wenn der erste Eintrag Ihrer Pfadvariablen (Benutzer oder Systeme) mit einem% (einer Umgebungsvariablen) beginnt, kann dies zu einem Problem führen.
Um dies zu beheben, tauschen Sie diesen ersten Eintrag einfach mit etwas anderem in Ihrem Pfad aus, das nicht zu einer Umgebungsvariablen führt.
Ich habe versucht, mit dem Play Framework zu arbeiten, aber mit der aktivierten.bat-Datei zu arbeiten, aber die Lösung ist gleich. Kopieren Sie einfach die Datei aus Windows/system32/findsr und fügen Sie sie in den Ordner "stecken". Führen Sie dann die entsprechende Datei erneut aus andrewsiand Suryaprakash
Wie bereits erwähnt, liegt das Problem in den falschen Einstellungen der PATH-Variablen in Windows . Laut article ist dies höchstwahrscheinlich darauf zurückzuführen, dass einige dumme Installationsprogramme die PATH-Variable in der Windows-Registrierung falsch geändert haben. Die Registrierung verfügt über zwei verschiedene Zeichenfolgentypen - REG_SZ
und REG_EXPAND_SZ
. Nur der zweite erlaubt die Erweiterung von %SystemRoot%
.
Überprüfen Sie Ihren Pfad, indem Sie in der Eingabeaufforderung set path
eingeben. Wenn Sie ändere %SystemRoot%
und andere Variablen in Path sehen, sind Sie betroffen (PATH sollte nur einfache Verzeichnisnamen anzeigen, keine Variablen).
Sie müssen die Pfadvariable in der Registrierung bearbeiten: HKEY_CURRENT_USER\Environment
und HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
. Da es nicht möglich ist, den Schlüsseltyp zu ändern, speichern Sie den Pfadwert irgendwo, löschen Sie den Schlüssel und erstellen Sie ihn erneut mit dem Typ REG_EXPAND_SZ
. Sie müssen sich abmelden, damit die Änderungen wirksam werden.
In meinem Fall (nicht mit JBoss verwandt) hat das Folgende geholfen, diesen Fehler zu beheben.
Anstatt von:
SET path="%path%;C:\some\additional\path"
Ich benutzte:
SET "path=%path%;C:\some\additional\path"
Bitte beachten Sie, dass aktuelle Windows-Systeme ein "S" für das Systemverzeichnis verwenden, also: C:\WINDOWS\System32 % SystemRoot%\System32
Wenn Sie das Kapital S weglassen, wird die Zeile in% PATH% vernachlässigt.