当前位置: 首页 > 编程笔记 >

Java开启/关闭tomcat服务器的方法

周飞
2023-03-14
本文向大家介绍Java开启/关闭tomcat服务器的方法,包括了Java开启/关闭tomcat服务器的方法的使用技巧和注意事项,需要的朋友参考一下

1.项目结构

2.CallTomcat.java

package com.calltomcat.test;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class CallTomcat {
 public static void main(String[] args) {
 //String command = "E:\\apache-tomcat-7.0.76\\bin\\startup.bat";//启动tomcat命令
 //String command = "E:\\apache-tomcat-7.0.76\\bin\\tomcat7w.exe";//启动Tomcat命令,仅限windows版本,无弹框
 String command = "E:\\apache-tomcat-7.0.76\\bin\\shutdown.bat";//关闭tomcat命令
 CallTomcat callTomcat = new CallTomcat();
 try {
  callTomcat.callCommand(command);
 } catch (IOException e) {
  System.out.println("执行命令时出错:" + e.getMessage());
 }
 }
 /**
 * 执行命令
 * 
 * @throws IOException
 */
 private void callCommand(String command) throws IOException {
 Runtime runtime = Runtime.getRuntime();//返回与当前的Java应用相关的运行时对象
 //指示Java虚拟机创建一个子进程执行指定的可执行程序,并返回与该子进程对应的Process对象实例
 Process process = runtime.exec(command);
 runtime.gc();//运行垃圾回收器
 String line = null;
 String content = "";
 BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));
 while((line = br.readLine()) != null) {
  content += line + "\r\n";
 }
 System.out.println(content);
 }
}

3.效果预览

  3.1 执行开启命令

  3.2 执行关闭命令

4.常见错误

  执行代码后可能出现:

The CATALINA_HOME environment variable is not defined correctly
This environment variable is needed to run this program

  此时需设置环境变量:

  本人设置后运行依然报错,但是将电脑注销一下再次运行即可。

5.说明

  若是执行startup.bat会自动出现弹框,但是若执行tomcat7w.exe(根据tomcat版本有所不同)则不会出现弹框。--仅windows版本,其他版本无.exe文件。

总结

以上所述是小编给大家介绍的Java开启/关闭tomcat服务器的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

 类似资料:
  • 错误:传输错误202:绑定失败:地址已在使用错误:JDWP传输dt_socket初始化失败,TRANSPORT_INIT(510)JDWP退出错误AGENT_ERROR_TRANSPORT_INIT(197):未初始化传输[debuginit.c:750]本机方法中的致命错误:JDWP未初始化传输,jvmtierror=AGENT_ERROR_TRANSPORT_INIT(197) 知道吗?

  • 如何在12.04Linux启动和关闭tomcat服务器? 当我使用sudo/etc/init时。d/tomcat7重新启动,它正在工作。 当我使用服务tomcat7 restart时,我收到消息: 您需要root权限才能运行此脚本。 当我使用usr/share/tomcat7/bin/shutdown时。sh,我得到: 组织。阿帕奇。卡特琳娜。启动。ClassLoaderFactory valid

  • 目前,我正在开发一个利用Neo4J的webapp。我们的应用程序需要部署在Tomcat环境中(客户需求)。我们决定嵌入Neo4j,因为这样我们可以使用Neo4j提供的Java API,部署起来更容易,性能也更好。但是,我们还需要访问REST API,因为我们有一个用Angular编写的单页webapp,目前正在使用这个接口。但是,嵌入式Neo4j数据库并不公开REST API。Neo4j-serv

  • 我正在通过启用Java EE的Eclipse运行tomcat,每当我试图启动服务器时,就会出现以下错误,我无法运行任何servlet, 我的web.xml如下所示

  • 运行Spring Boot应用程序时,嵌入式tomcat服务器无法启动。我刚刚在pom.xml中添加了所需的依赖项,并创建了一个简单的java POJO类。应用程序属性已经按照oracle数据库所需的jdbc配置以及Hibernate方言信息进行了设置。 执行mvn spring-boot:run时的控制台日志

  • 到目前为止,我发现: docker停止向容器中的进程ID 1发送SIGTERM。 容器中的进程ID 1是运行tomcat的java进程。*) 是的,tomcat本身会优雅地关闭,但servlet不会这样做。 Servlet在2秒后被杀死,即使他们正在处理一个再访客(!!) *)旁注:虽然我们的容器入口点是[“/opt/tomcat/bin/catalina.sh”,“run”],但在catalin