我一直在尝试使用SSH从远程计算机执行Java应用程序 但是效果不好:(
要在本地计算机上执行此应用程序, 我写了一个包含java命令的shell脚本,它在本地工作正常。
所以,我尝试通过ssh远程执行这个shell脚本,如下所示
ssh username@hostname execute.sh
它似乎最初有效,但随后导致以下错误,并关闭。
GC警告:重复分配非常大的块(大小为929792):可能导致内存泄漏和性能不佳。
GC警告:内存不足!回归NIL!
我理解该消息意味着阅读此页面(http://www.hpl.hp.com/personal/Hans_Boehm/gc/debugging.html), 但是,我不知道为什么只有在我远程执行java命令时才会出现此错误。
有人对此有所了解吗? 或者,有没有更好的方法来远程执行java命令 除了ssh?
非常感谢任何想法或信息!
此致 可
java版:Java(TM)SE运行时环境(版本1.6.0_18-b07)
答案 0 :(得分:1)
本地执行命令与远程执行命令之间的唯一区别是环境变量设置。请检查程序可能正在使用的环境变量(例如JAVA_HOME)是否设置为预期值
答案 1 :(得分:1)
使用“expect”命令解决了问题。我仍然不知道GC警告的原因.. 谢谢你们所有的评论。