今天从命令行提示符启动JBoss时出现以下错误:
'findstr' is not recognized as an internal or external command
答案 0 :(得分:60)
请谷歌,你可以找到很多答案。但请按以下方式解决问题。将以下值添加到右键单击我的计算机 - >高级 - >环境变量 - >系统变量 - >选择路径变量 - >附加以下值。
C:\窗口\ system32
它应该适用于这种变化。
答案 1 :(得分:3)
请完成最简单的步骤: -
C:\Windows\system32\
并复制findstr.exe
文件。C:\Program Files\Java\jdk1.6.0_24\bin
答案 2 :(得分:3)
对我来说,当我将findstr(从windows / system32)应用到wildfly / bin时,它可以正常工作
答案 3 :(得分:1)
检查%SystemRoot%是否正在评估(在命令提示符下键入set path,你不应该看到%SystemRoot%,而是看到实际路径)。如果您的路径变量(用户或系统)第一个条目以%(环境变量)开头,则可能会导致问题。
要解决此问题,只需将第一个条目与您路径中不带环境变量的任何其他内容交换。
答案 4 :(得分:1)
您还可以通过将'findstr'替换为'C:\ Windows \ system32 \ findstr'来对目录进行硬编码。在使用具有受限用户权限的系统时,这非常有用。
答案 5 :(得分:0)
正如其他人指出的那样,问题在于Windows中PATH变量的设置错误。
根据{{3}},这很可能是因为一些愚蠢的安装程序在Windows注册表中错误地修改了PATH变量。 Registry有2种不同的字符串值类型 - REG_SZ
和REG_EXPAND_SZ
。只有第二个允许扩展%SystemRoot%
。
因此,请在命令提示符下键入set path
来检查路径。如果在Path中看到未展开的%SystemRoot%
和其他变量,则会受到影响(PATH应该只显示普通目录名,而不是变量)。
您需要在注册表中编辑Path变量:HKEY_CURRENT_USER\Environment
和HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
。由于无法更改密钥类型,请在某处保存路径值,删除密钥并使用类型REG_EXPAND_SZ
重新创建密钥。您需要注销才能使更改生效。
答案 6 :(得分:0)
我已经尝试使用play框架,但坚持运行activator.bat文件,但解决方案是相同的只是从windows / system32 / findsr复制文件并将其传递到卡住文件夹下然后再次运行相应的文件。 感谢andrewsiand Suryaprakash
答案 7 :(得分:0)
请注意当前的Windows系统使用Capital" S"对于System目录,所以: C:\ WINDOWS \ System32下 %SYSTEMROOT%\ System32下
省略大写字母S将导致忽略%PATH%
中的行答案 8 :(得分:0)
就我而言(与JBoss不相关),以下内容有助于解决此错误。
代替:
SET path="%path%;C:\some\additional\path"
我用过:
SET "path=%path%;C:\some\additional\path"
答案 9 :(得分:0)
对于 IBM ACE 解决方案
'findstr' 未被识别为内部或外部命令,
转到路径 C:\Windows\System32
找到findstr.exe,复制它,然后找到你的应用程序的bin文件所在的路径。例如 C:\Program Files\IBM\ACE\11.0.0.12\server\bin 然后将其粘贴到 bin 文件中
取消ace的控制台并重新打开。
然后在 ace 控制台上运行 ACE 工具包命令。
然后回车,就可以打开了。