© 版权声明:本文为博主原创文章,转载请注明出处

通过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服务器的更多相关文章

  1. java web(一):tomcat服务器的安装和简单介绍,与eclipse关联

    一:下载tomcat安装包和安装 这个百度一下就可以了. 安装完以后进入tomcat的安装路径查看 如图所示:有几个目录简单介绍下 bin目录:   存放运行tomcat服务器的相关命令. conf目 ...

  2. java代码关闭tomcat程序

    1.通过java代码实现tomcat的关闭 2.tomcatStop.java package test; import java.io.BufferedReader; import java.io. ...

  3. java tomcat服务器

    1.什么是javaweb? Java web,是用java技术来解决相关web互联网领域的技术的总称. web包括:web服务器和web客户端两部分.java在最早web客户端的应用有java app ...

  4. idea java项目部署至Tomcat服务器

    1. 服务器部署TomCat     1. 安装JDK,配置环境变量     > 变量名:JAVA_HOME;变量值:C:\Program Files\Java\jdk1.7.0_45      ...

  5. Linux安装Tomcat服务器发布项目教程

    前面小Alan跟大家聊了在Linux服务器上jdk运行环境的安装以及redis非关系型数据库的安装,今天继续跟大家聊聊Tomcat的安装,以及将我们的项目发布上去并成功的访问. 第一步:将tomcat ...

  6. linux 系统下配置tomcat,并给tomcat赋予最高操作权限,启动tomcat和关闭tomcat

    配置tomcat服器 sudo chmod -R 777 * 给某个文件下所有文件赋予最高的读写权限 红颜色的字是路径,蓝颜色字是命令 (1)官方网站下载tomcat压缩包.apache-tomcat ...

  7. Tomcat服务器的介绍、安装配置

    [1] Tomcat服务器的介绍 1.是一个免费的.开饭源代码的Servlet服务器,目前非常流行. 2.Tomcat服务器是Apache软件基金会的一个顶级项目,由Apache.Sun等公司共同开发 ...

  8. 安装Tomcat服务器以及错误汇总(tomcat8.0、jdk8)

    Tomcat安装和启动 一.下载Tomcat 你可以直接百度Tomcat官网, 或者,直接在地址栏输入他的官网地址:http://tomcat.apache.org/,然后进入他的主页,在主页左侧可以 ...

  9. 手写Tomcat服务器

    预备知识 编写服务器用到的知识点 1) Socket 编程2) HTML3) HTTP 协议4) 反射5) XML 解析6) 服务器编写 Socket编程 https://www.cnblogs.co ...

随机推荐

  1. 【09】react 之 表单组件

    不太清楚有多少初学React的同学和博主当时一样,在看完React的生命周期.数据流之后觉得已经上手了,甩开文档啪啪啪的开始敲了起来.结果...居然被一个input标签给教做人了. 故事是这样的:首先 ...

  2. Understand:高效代码静态分析神器详解(一)【转】

    转自:http://www.codemx.cn/2016/04/30/Understand01/ 之前用Windows系统,一直用source insight查看代码非常方便,但是年前换到mac下面, ...

  3. Qualcomm defconfig

    xxx_defconfig - for debugging xxx-perf_defconfig - for final live user's version.

  4. php中Mail_mimeDecode无法读取foxmail等eml文件正文问题

    使用$cat -A xx.eml文件,发现foxmail的eml文件文件结尾和空行使用的\r\r\n, 如: Received: from WDGTO0MYSBX754J (unknown [106. ...

  5. Python 复习-1

    #!/usr/bin/env python # -*- coding:utf-8 -*- # @Time : 2017/10/27 22:46 # @Author : lijunjiang # @Fi ...

  6. FormatDateTime 当前时间减去几小时的做法

    top_start_modified := FormatDateTime('yyyy-mm-dd hh:mm:ss',(Now - ((1/24)*3)));    top_end_modified ...

  7. OSX 系统无法直接用 Chrome 双击点击打开本地 html 文件

    在 Mac OS X 下,文件经常会被附加上 OS X 特有的扩展属性 ( extend attributes ),具体表现是用 ls -l 查看时会有 @ 的标记,譬如: $ ls -l index ...

  8. AC日记——中庸之道 codevs 2021

    2021 中庸之道  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果     题目描述 Description 给定一个长度为N的序列 ...

  9. 调用Thread.interrupt()方法到底会发生什么?

    1. 当线程处于Blocked状态(sleep,wait,join),线程会退出阻塞状态,并抛出一个InterruptedException.park除外,它有响应但是不会抛出异常 2. 当线程处于R ...

  10. 详解BitMap算法

    所谓的BitMap就是用一个bit位来标记某个元素所对应的value,而key即是该元素,由于BitMap使用了bit位来存储数据,因此可以大大节省存储空间.   1. 基本思想 首先用一个简单的例子 ...