用ant远程运行jar文件,会报错。但是用putty远程登录运行,运行jar文件是正常的。
----------
问题检查
----------
用ant远程运行java -version
command="java -version" 结果是1.6
而远程登录后运行java -version,结果是1.8
确认是ant 远程运行时,环境变量不对。
-----------
问题解决
-----------
把command 改为
<ssshexec command="/bin/bash -l yourScript.sh" .../>
这样可以在运行自己的shell文件前先运行login shell.
环境变量就正常了
-----------
其他
-----------
另外可以用以下方法运行单个命令
<sshexec command="/bin/bash -l -c 'java -version'" .../>