我有一个jar文件,我想从bash脚本启动。该jar包含对包含图像的外部文件夹的引用。包含外部文件的Bash脚本运行jar不起作用
当我从jar命令行运行jar的绝对路径时,所有工作正常。当我从bash脚本运行它时出现问题。显然,找不到包含图像的文件夹。
从命令行启动:
java -Djava.library.path=/opt/opencv/build/lib -Xmx1g -jar /home/version4/Podo.jar
bash脚本:
#! /bin/bash -x
cmd="java -Djava.library.path=/opt/opencv/build/lib -Xmx1g -jar /home/version4/Podo.jar"
eval $cmd
哪里是我的图片是该目录是: /家/版本4/IMG
的Java代码访问图像:
String img_header="./img/HEADER.png";
String img_body="./img/BODY.png";
BufferedImage header,body;
header=ImageIO.read(new File(img_header));
body=ImageIO.read(new File(img_body));
输出错误:
javax.imageio.IIOException: Can't read input file!
at javax.imageio.ImageIO.read(ImageIO.java:1301)
谁能告诉我什么,我做错了什么?谢谢。
为什么你在这里使用'eval'而不是运行命令? – 2015-04-01 09:48:42
即使我正在运行只有命令是一样的;我第一次这样做,比我读的是我最好使用eval:| – 2015-04-01 09:50:17
好吧,那么你用'-x'运行脚本,它应该输出运行命令。那么输出是什么? – 2015-04-01 09:51:24