繁体   English   中英

如果我有多个用于Projects的版本,如何设置JAVA_HOME或CATALINA_HOME?

[英]How to set JAVA_HOME or CATALINA_HOME if I have more than 1 version used for Projects?

我有不同的项目使用不同版本的JDK(5.0,6.0)和Tomcat(6.0,7.0),那么我应该如何在环境变量中设置JAVA_HOMECATALINA_HOME

或者,如果我通过.War文件运行我的应用程序,可能没有必要在环境变量中设置JAVA_HOMECATALINA_HOME jdk/tomcat服务器将在我打包时运行我选择的版本(通过Eclipse - > preferences ...)。

在tomcat启动脚本/bin/catalina.sh ,使用以下环境变量:

  • JAVA_HOME是用于运行tomcat和Web应用程序的JDK的路径
  • CATALINA_HOME是tomcat二进制文件的路径
  • CATALINA_BASE是tomcat配置文件的路径

那么,这种方法怎么样? 例如 :

将JDK 5.0安装到: /opt/jdk5
将JDK 6.0安装到: /opt/jdk6
将tomcat 6.0安装到: /opt/tomcat6
将tomcat 7.0安装到: /opt/tomcat7

每个Web应用程序都有自己的文件夹来保存自己的tomcat配置。 例如: /home/web1用于Web应用程序1
/home/web2用于Web应用程序2

在每个文件夹中,我们需要以下子目录: conflogstempwebappswork从tomcat安装文件夹(即/opt/tomcat7/ )中复制这些子目录。然后将.war放到相应的webapps的文件夹(例如/home/web1/webapps/webappl.war/home/web2/webapps/webapp2.war )。

最后,编写一个脚本来为每个应用程序使用不同的JDK和tomcat启动tomcat。 例如,要启动web1,您的脚本应该看起来像:

JAVA_HOME=/path/to/jdk  #eg./opt/jdk6 
CATALINA_HOME=/path/to/tomcat/installation #eg./opt/tomcat7 
CATALINA_BASE=/home/web1/
export JAVA_HOME JAVA_OPTS CATALINA_HOME CATALINA_BASE
$CATALINA_HOME/bin/catalina.sh start

参考: http//www.mohancheema.net/appserver/setting-tomcat-to-run-mutiple-instances-of-it

如果在Eclipse中运行它,则可以使用“运行配置”对话框设置需要更改的任何环境变量。 执行指定的运行配置时会自动设置这些设置。 要使用此功能,请右键单击您的项目,选择“运行” - >“运行配置”。 您可以选择“运行配置”,然后转到“环境”选项卡,在那里可以指定所需的自定义变量,还可以覆盖O / S设置的任何内容。

如果您想在eclipse之外执行此操作,并保留专用于每个项目的Tomcat副本,请根据您的操作系统编辑startup.sh或startup.bat文件,然后在那里明确设置environemnt变量。

防爆。 对于项目1:,在/opt/apache-tomcat6-1/bin/startup.sh文件的顶部添加这些行

export JAVA_HOME ='/ opt / jdk1'export JAVA_HOME ='/ opt / apache-tomcat6-1'

防爆。 对于Project 2:,在/opt/apache-tomcat6-2/bin/startup.sh文件的顶部添加这些行

export JAVA_HOME ='/ opt / jdk2'export JAVA_HOME ='/ opt / apache-tomcat6-2'

如果您没有Tomcat的专用副本,那么您可以为每个项目创建一个shell脚本/批处理文件,它将设置这样的必要环境变量,然后调用相应的startup.sh或startup.bat文件。

这些变量由启动Tomcat的脚本使用,否则无关紧要。 您可以在运行startup.sh脚本之前立即设置它们,也可以编辑catalina.sh脚本以在脚本本身中设置值(这是一种很好的方法,因为catalina.sh由其他脚本共享),或者您可以编写自己的脚本来设置变量,然后调用tomcat脚本......有很多可能性。 您无法全局设置变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM