TeamCity - start tomcat



我试图启动tomcat与teamcity部署构建步骤。下面的步骤在直接运行时都没有问题,但在teamcity步骤中不起作用。java窗口出现并关闭,就像构建步骤在完成时杀死所有子进程一样。我已经尝试了以下所有方法:

batch(命令行在源代码中运行批处理,或者在teamcity脚本中运行批处理,以及命令行和流程构建类型):

call "%env.CATALINA_HOME%binstartup.bat"
start "%env.CATALINA_HOME%binstartup.bat"
cmd /k "%env.CATALINA_HOME%binstartup.bat"
start "DEV server" "%env.CATALINA_HOME%binstartup.bat"

powershell:

# wasnt sure if env var was being carried over, not relevant 
$env:CATALINA_HOME = %env.CATALINA_HOME%
Start-Process "%env.CATALINA_HOME%binstartup.bat"

是否有办法告诉TeamCity 10的构建步骤"嘿,离开已经开始运行的东西"?

CATALINA_HOME是teamcity参数(env.CATALINA_HOME)中的一个环境变量,它被设置为"C:apache-tomcat",这是正确的。

一些附加信息:TC服务器和代理以用户帐户运行,该用户帐户可以访问所有文件夹(并且是本地管理员)。

在tomcat binsetenv.bat中我有CATALINA_OPTS -XmX和-Xms参数,它们非常大,需要64位java。

当执行这个特定的构建参数时(我建议用于调试,它将阻止TC构建)

%env.CATALINA_HOME%bincatalina.bat
(argument: run)

然后我得到一个退出代码1构建失败与一个有用的错误消息(但没有tomcat日志):

[08:25:24]Error: Could not create the Java Virtual Machine.
[08:25:24]Error: A fatal exception has occurred. Program will exit.
[08:25:24]Invalid maximum heap size: -Xmx32768m
[08:25:24]The specified size exceeds the maximum representable size.
[08:25:24]Process exited with code 1

如果需要子进程的大Xmx和Xms,则执行构建的BUILD AGENT也需要从64位运行!在我的例子中,我有,eg

C:Teamcity_BuildAgent_Deployjre

我复制粘贴了我的64位jre安装在那里,以及每个TC文档,然后它可以启动进程与大Xmx和Xms。我没有调整TEAMCITY_AGENT_MEM_OPTS或任何批次

最新更新