![无法在 Windows Server 2012 上将 Wildfly 8.1.0 作为服务运行 - 扩展属性不一致?](https://linux22.com/image/692419/%E6%97%A0%E6%B3%95%E5%9C%A8%20Windows%20Server%202012%20%E4%B8%8A%E5%B0%86%20Wildfly%208.1.0%20%E4%BD%9C%E4%B8%BA%E6%9C%8D%E5%8A%A1%E8%BF%90%E8%A1%8C%20-%20%E6%89%A9%E5%B1%95%E5%B1%9E%E6%80%A7%E4%B8%8D%E4%B8%80%E8%87%B4%EF%BC%9F.png)
我正在尝试让 Wildfly 8.1.0.Final 作为 Windows Server 2012 上的服务运行。我使用 cd 进入并在 cmd 中%Wildfly_Home%\bin\service
运行。service install
它输出如下内容:
Using the X86-64bit version of prunsrv
Success
我的 Windows 服务中添加了一个名为 Wildfly 的服务。但是当我尝试启动它时,它告诉我:
Windows 无法在本地计算机上启动 Wildfly。有关详细信息,请查看系统事件日志。如果这是非 Microsoft 服务,请联系服务供应商,并参考服务特定的错误代码 255。
在 Windows 事件查看器中,它显示以下内容:
Wildfly 服务因以下服务特定错误而终止:
扩展属性不一致。
这是在说什么?我猜我可能需要在系统注册表中做一些事情,因为谷歌搜索到一些人说我的注册表已损坏。但我不想只运行一些自动化工具——这有以其他方式弄乱我的注册表的风险。我希望有人能告诉我哪里出了问题,这样我才能真正修复它。我查看了 Wildfly 注册表条目,在我相对缺乏经验的眼睛看来一切都很好。
答案1
根据情况将 C:\Windows\system32\findstr.exe 复制到 Java\jdk\bin 或 Java\jre\bin。
这解决了我的问题。
答案2
我遇到了同样的问题,并尝试了很多建议,例如: - 将 Wildfly 文件移动到路径不包含空格的位置 - 删除 service.bat 的显示名称字段中的引号(但显然使用上面引用的新版本的 service.bat 是等效的) - 如上所述将 findstre.exe 移动到 Java\jdk\bin
在它最终起作用之前我所做的最后一个更改是将 ..\Java\jdk 目录作为 JAVA_HOME 添加到 PATH 环境变量中,而不是我在某处读到的 ..\Java\jdk**\bin** 目录。
每次修改之间卸载并重新安装服务。