开发者社区> 问答> 正文

使用Runtime.exec()执行tomcat的startup.bat报错问题

Process pro = Runtime.getRuntime().exec("D:\\Program Files\\
Apache Software Foundation\\Tomcat 6.0\\bin\\startup.bat");         
BufferedReader in = new BufferedReader(new InputStreamReader(pro.getInputStream()));         
String str;         
while((str=in.readLine())!=null){
    System.out.println(str);
}

打印报错:
`The CATALINA_HOME environment variable is not defined correctly
This environment variable is needed to run this program`

直接双击startup.bat和在cmd中运行都可正常启动tomcat服务,CATALINA_HOME环境变量也配了,可是还报这个错,真让人费解。最近要做个监听tomcat服务器的程序,当tomcat无响应时需要程序自动停止tomcat后再启动,我就试着用这个方法,但一直报这个错,网上找了很多资料也不知其所以然,不知道还有没有好一点的方法使用代码来启动tomcat。希望看到的前辈们帮帮忙,在此谢过!

展开
收起
落地花开啦 2016-03-26 10:07:45 2410 0
1 条回答
写回答
取消 提交回答
  • 喜欢技术,喜欢努力的人

    startup.bat启动所使用的JAVA配置可以通过修改catalina.bat 与setclasspath.bat 文件里的JAVA_HOME与JRE_HOME变量来指定。

    2019-07-17 19:15:29
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Apache Tomcat 的云原生演进 立即下载
Build Your Next Apache Spark Job in .NET Using Mobius 立即下载
低代码开发师(初级)实战教程 立即下载