2011-08-03 57 views
1

我有Installshiled脚本,它将CATALINA_HOME定义为最初的环境变量。在执行使用CATALINA_HOME的批处理文件service.bat之后执行相同的脚本。此文件执行时显示错误CATALINA_HOME未定义正确定义。因为这个变量被定义为环境VARIABLE并正确指向Tomcat目录。我的系统需要重新启动才能识别环境变量。是否有任何方法可以直接定义无需重新引导即可工作的环境。我正在使用64位Windows 7.64位操作系统环境变量,无需重新启动即可识别

+0

被什么认可?任何在安装完成后启动的程序都应该可以看到所定义的环境变量。但是,如果您在已经运行的某些内容(如安装程序本身)中需要它,则可能必须说服它刷新。 –

+0

是的,Micheal就是这样。我正在运行创建CATALINA_HOME的安装程序,然后相同的安装程序需要使用此环境变量。正如你所说我需要刷新这个变量。我如何刷新这一个。 – Maqsood

+0

对于这种用法,您最好重复使用您用于设置环境变量的相同变量或属性。 –

回答

0

我可能是错的,但是您正在运行的脚本在启动时会加载一次env变量,所以您不会在脚本运行时添加任何新的env变量。

而在你的脚本中,如果你只是执行批处理文件,它将使用脚本开头的同样过时的env变量。

我所做的是运行'cmd/k service.bat'这将启动一个新的shell(带有更新后的env变量)并运行批处理文件并在此后终止。

您不应该在安装之间重新启动。

+0

我试过CMD/K,但不幸的是它不适合我。任何其他建议请..谢谢 – Maqsood

+0

你能告诉我你正在运行的命令,你使用LaunchAppAndWait吗?当你说不工作时,你的意思是cmd甚至不运行?或者它运行但env变量不存在,或者你知道的只是服务无法启动。这种方法有alwasys为我工作,所以也许错误发生在其他地方 – Joe

相关问题