InstallAnywhere在我的自动回归测试中定期退出,因为它认为另一个安装正在运行。
我可以以某种方式阻止此检查吗?
由于 -td
答案 0 :(得分:0)
这很难回答,因为简单的回答是“是的,你可以阻止这种检查。”但是,这可能不是正确的答案。
简单的答案是转到Project > Info > Multiple Launch Settings
,取消选中Prevent multiple launches of an installer at a given time.
然而,你的帖子引出了一个较大的两部分问题:“为什么在上次试运行中仍然存在IA的实例,我真的关心吗?”
如果你不关心并且在开始新的运行之前只希望它们死亡,那么请参考任何一个好的答案here(Linux),here(Linux)或{{3关于如何杀死正在运行的进程的问题(Windows)。在测试顶部添加一个步骤,用于搜寻并杀死任何延迟的InstallAnywhere实例。
如果你做关注(现在我们来正确回答),那么检查在$ TMP(或%TEMP)中安装期间创建的日志%)目录看看有什么了。
此外,在项目中,您可以通过添加以下内容使安装程序更加详细:
-Dlax.debug.all=true -Dlax.debug.level=3
(或更详细的4或5)到Project > JVM Settings > Installer Settings (tab) > Optional Installer Arguments > Additional Arguments
。您需要在发货前删除这些。您也可以在启动安装程序时将这些添加到命令行。
您也可以转到Project > JVM Settings > Log Settings
,让安装程序将其进度打印到控制台。在这里,取消选中Include debug output (stderr and stdout)
。然后在Send stderr to:
和Send stdout to:
中输入 console 一词。您也可以设置特定的文件名,而不是控制台。您还需要在发货前撤消这些设置。
所有这些都应该为您提供大量信息来查找和解决根本问题:为什么您的InstallAnywhere执行没有终止。