我知道如何使用BAT文件(以及linux中的.sh文件)从Java程序中启动/阻止Tomcat。就这样做了:
String command = "c:\program files\tomcat\bin\startup.bat";//for linux use .sh
Process child = Runtime.getRuntime().exec(command);
注意:使用CATALINA_HOME使这段代码更加动态。
现在,我正在寻找一种从程序启动/停止Tomcat的Windows服务的方法。我的意思是,我想启动/阻止Tomcat从Java中进入控制面板->管理工
我对linux和这个论坛非常陌生。我正在为一个客户解决一个问题,他们有10+ Red Hat Linux5.5 64位服务器。他们希望在某些服务器上使用stop脚本(该脚本使用'kill -15')停止tomcat进程,该脚本运行良好,并在几秒钟内停止tomcat进程。在一些服务器上,有时它会很快停止,有时它会持续运行几分钟,最后客户不得不使用'kill -9‘命令来停止tomcat。日志不会显示任何内容。
你知道为什么这个脚本会有间歇性的行为吗?我们怎样才能在日志中捕获它呢?
我在Linux服务器上的Tomcat 7.0.32上运行了一个应用程序。该应用程序在一个文件中运行程序。问题是突然间我得到了
"Cannot run program "./bLogin.sh" error=2, No such file or directory"
当然,我没有删除文件。过了一段时间,问题停止了(同样,没有干预),应用程序运行正常。是什么导致了这种情况?我能想到的唯一一件事就是在此期间发生的空间不足问题。
我已经在Arch Linux上安装了docker。尝试运行web应用程序的docker图像,但是我只能在第一次运行它们。如果我停止容器并再次运行它,浏览器将继续加载。为了解决这个问题,我必须重新启动docker服务。即
docker run --rm --name war -p 8080 -d mvpjava/springboot_docker_tomcat:1.0
curl http://172.17.0.2:8080 ## gives the response.
docker container stop war
docker run --rm --name war -p 8080 -
我在多个web服务器上安装了下面的tomcat init脚本。
#!/bin/bash
#
# description: Apache Tomcat init script
# processname: tomcat
# chkconfig: 234 20 80
#
#
# Copyright (C) 2014 Miglen Evlogiev
#
# This program is free software: you can redistribute it and/or modify it under
# the terms of the GNU General Public License
我从Linux服务器(CentOS)中删除了几个Tomcat安装。在安装Tomcat 8之后,现在当我尝试启动Tomcat 8 (./startup.sh)时,会出现以下错误:
Cannot find /opt/apache-tomcat-7.0.56/bin/setclasspath.sh
This file is needed to run this program
似乎我还没有正确地删除以前安装的tomcat。我怎么才能让这个发挥作用。帮助。
更新
[root@localhost bin]# ./startup.sh
Using CATALINA_BASE: /usr/local/
Eclipse和Tomcat已停止对源代码中的错误进行停止/停止。Eclipse不会标记错误,Tomcat也不会停止/停止。
out = response.getWriter();
db = new ValgDatabasehandler(rb, out);
如果我更改为
out = response.getWriter();
db = new ValgDatabasehandler(rb, out1);
Ecplise和Tomcat都不会停止或在代码中标记这一点。
错误昨天出现了,但我不确定我在Eclipse IDE中犯了什么错误或哪里出错了……
编辑:我启动
我在linux中创建了一个tomcat服务,以便能够自动运行tomcat。然而,我遇到了一个问题,当我使用该服务启动tomcat时,它抛出错误。
SEVERE: Could not contact localhost:8005. Tomcat may not be running.
java.net.ConnectException: Connection refused.....
但是当我检查时,tomcat运行得很好,因为我能够访问我的localhost:8080。然后,当我调用服务停止时,tomcat不会停止。
我的服务脚本基本上只调用startup.sh和shutdown.sh。我不明
我无法在Linux上启动或停止Tomcat。由于服务器是新的,而且我们第一次运行它,shutdown.sh抛出一个异常,尽管我已经放置了log4j.properties:
/tomcat/V6.0/bin$ ./shutdown.sh
After calling setenv.sh: Using JAVA_HOME:
After calling setenv.sh: Using JRE_HOME: /usr/java/jdk1.8.0_91/jre
After cygwin: Using JAVA_HOME:
After cygwin: Using JR
我正在Linux上运行Netbeans 7.0.1。Netbeans是通过发行版的存储库安装的。我现在已经安装了tomcat7-user软件包,这样我就可以创建Tomcat的用户实例,我可以根据需要启动或停止这个实例。当我启动这个实例(使用bin/startup.sh)时,脚本报告:
Using CATALINA_BASE: /home/david/tomcat
Using CATALINA_HOME: /usr/share/tomcat7
Using CATALINA_TMPDIR: /home/david/tomcat/temp
Using JRE_HOME: /us
我有个奇怪的问题。每次我停止Tomcat,SSH变得非常缓慢,几乎完全没有反应。SSH接受任何命令需要一分钟甚至更长时间。当我终于让Tomcat重新开始的时候,一切都恢复了正常。
这发生在一个非常繁忙的服务器上。问题是,由于应用程序升级,我需要经常停止Tomcat。它通常需要几秒钟来升级,但在这里,它几乎需要10分钟,因此,我们正经历不必要的停机时间。
我看到的一件事是,当我停止Tomcat时,top在100%的CPU上显示了大量的ksoftirqd/X进程。这会是问题吗?
内核版本是:2.6.18-308.11.1.el5
红帽版本是:Red Hat Enterprise Linux Ser