Error :Unable to access jarfile *.jar
1、问题场景
搭建CI环境,Linux启动shell脚本执行完成jar文件生成的log文件,less等工具查看报错:“Error : Unable to access jarfile *.jar”。
2、分析排查
- 切换到jar目录直接运行jar包,运行正常,查看日志正常。
- 切换到jar目录采用shell脚本执行,报错相同。
sh -x restart.sh (根据shell脚本补充相应参数)
初步结论:shell脚本编写有问题。
3、解决方案
对shell脚本相应的步骤语句echo打印分析,发现jar包目录地址打印为空,导致脚本打开jar包目录无效。进一步排查发现:jar目录地址变量赋值等号右侧有空格,直接导致shell脚本执行提示:“./restart.sh : line 10: /data/*/*/appdir :Is a directory”,空格导致shell并未将jar目录地址变量右侧数值识别为字符串。
解决方案:删除等号右侧空格。
4、小结
- “Error : Unable to access”,大部分由于路径不正确导致。
- shell脚本变量等号(=)两侧不能添加空格。