Apache Tomcat 8.5。错误:服务以特定于服务的错误“不正确的函数”终止。

11

一个月前,我在Windows Server 2008上安装了Java 1.8和Apache Tomcat 8.5,并且它一直运行良好。但现在该服务已经停止,我无法从Apache配置或Windows服务中重新启动该服务,它总是处于停止状态。

我遇到了以下错误信息:"service terminated with service specific error incorrect function"。

Windows事件查看器中的错误信息没有提供任何更多的信息:

即使是它的详细信息选项卡:

我该怎么办?

错误描述

事件查看器

事件详细信息


9
我打开了“配置Tomcat”,在Java选项卡中勾选了“使用默认值”,这样它又可以正常工作了。 - improc
7个回答

20

我尝试安装 Apache Tomcat/8.5.31 作为Windows服务,但也遇到了同样的错误。

对我而言,最终起作用的是遵循以下步骤。前往Tomcat安装目录的bin文件夹。您会看到两个EXE文件(tomcat8.exetomcat8w.exe)。tomcat8w.exe是一个用于监视和配置Tomcat服务的图形用户界面应用程序。双击它,然后转到Java选项卡
1)启用 Use default 复选框
2)在 Java Classpath: 部分中,指定路径到 bootstrap.jar tomcat-juli.jar 。这些应该在您的tomcat安装的 bin 目录中本身存在:

<path_to_tomcat_installation>\bin\bootstrap.jar;<path_to_tomcat_installation>\bin\tomcat-juli.jar

enter image description here

若您使用默认的 LogPath选项并使用Windows服务方式安装Tomcat,可在下列位置检查日志:文档中所述: %SystemRoot%\System32\LogFiles\Apache

更新:在最近的另一个安装过程中,我注意到尽管配置设置与另一个工作的设置完全相同,但仍然在系统日志中出现了 Incorrect function 错误。这次,我不得不取消选中Use default选项,并明确提供路径到jvm.dll,如下所示:

enter image description here

如上文所述,仍需设置Java Classpath


同样的问题在非管理员用户下安装:通过编辑“Java虚拟机”进行修复。请参阅https://dev59.com/c47ea4cB1Zd3GeqPHORn - giorgiomugnaini

2

目前我有一台运行Tomcat 9的Windows Server 2012 R2 Datacenter,并且遇到了同样的问题。这是在我运行Windows更新并重启服务器之后发生的。

以下是错误信息。(被涂黑的文本是我的私人数据。)

尝试启动服务时显示的错误。

系统事件日志中的错误。

以下步骤解决了该问题...

  1. 导航至tomcat9w.exe位置:\Tomcat9\bin\
  2. 右键单击tomcat9w.exe,选择以管理员身份运行。
  3. 选择Java选项卡。选择使用默认值,应用并确定。
  4. 启动您的服务。
注意:我在成功运行服务后取消了“使用默认值”框的选中状态,因为我想保留现有的配置。未来,该服务将继续正常工作。
希望这可以帮到你!

0
在我的情况下,唯一能让它正常工作的方法是进入“启动”选项卡并将“模式”从“JVM”更改为“Java”。之后,它就可以正常启动,并且可以通过访问本地主机来确认。

enter image description here


0

我也遇到了Tomcat 9和Java 13的一些问题(尝试了之前提到的所有解决方案,但都没有起作用)。当我将其降级为Java 11并从JDK 11指向jvm.dll时,我的问题得到了解决(或者如果JAVA_HOME设置为Java 11,则使用默认值)。

enter image description here


0

(绝对不是专家)

我通过重新安装Java来解决了这个问题。我使用的是由IntelliJ下载的Java SDK。虽然我能够在安装过程中将Tomcat指向该下载,但它在运行时返回了“错误服务终止”消息。相反,我直接从Oracle安装了Java SDK,Tomcat在安装期间立即找到了安装位置(我不需要指定),并且这个错误消失了。

可能是由于IntelliJ安装的Java不完整而导致了问题的根本原因,但我绝对不是专家。


0

我通过重新安装Tomcat解决了这个问题:

  1. 搜索 命令提示符 图标
  2. 右键单击它
  3. 选择 以管理员身份运行
  4. 将文件夹更改为Tomcat的 bin 文件夹
  5. 执行 appserver uninstall
  6. 执行 appserver install

这解决了我的问题。


-1
我按照以下步骤来解决上述问题。如果有人仍然遇到相同的问题,这可能会有所帮助。

步骤1:打开安装目录:tomcat9w.exe 位置:\Tomcat9\bin\

步骤2:在Tomcat的“Java”选项卡下浏览已安装的Jvm.dll路径。

步骤3:运行服务但仍然面临相同问题。

步骤4:然后打开“C:\Program Files (x86)\Apache Software Foundation\Tomcat 9.0\bin>startup.bat”,并输入。

最后问题得到了解决。


编写箭头标记 - Abhishek Raj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接