无法访问jarfile
我正在尝试在我的Linux机器启动时运行.jar
文件(Ubuntu 12.04服务器)
我的脚本只要在它所在的目录中运行它就可以工作。如果我尝试在目录外运行它,我会收到错误“无法访问jarfile settasks.jar”。 我想我的另一个脚本也有同样的问题。
这可能是脚本错误还是权限错误? 我完全失去了,我还没有找到任何解决问题的方法。 任何帮助都将受到欢迎。
右键单击该文件,然后选择“ 复制” 。
现在,假设您正在使用以下文件的目录中执行该文件:
java -jar ./settask.jar
键入命令的开头( java -jar
) ,然后粘贴 – Ctrl + Shift + V – 你应该得到这样的东西,其中是指定文件的完整路径:
java -jar file:///home/wilf/settask/settask.jar
删除file://
并按↵ :
java -jar /home/wilf/settask/settask.jar
如果它工作,那么相同的命令应该在您的脚本中工作。
我希望这个答案没问题,我想你是在询问bash脚本。
注意:
./
告诉它搜索它当前所在目录的命令。
在开头有file://
意味着它不起作用。
我有同样的问题。 在终端中以错误启动它
Unable to access unicentaopos.jar
解决方案比问题更简单。
添加到已知的启动器行Path=/usr/bin/unicenta/
并解决问题。
文件夹/unicenta
当然是程序所在的文件夹。
以这种方式,起动器看起来像:
[Desktop Entry] Encoding=UTF-8 Version=1.0 Name=Unicenta Comment=Fires up Unicenta oPOS Type=Application Path=/usr/bin/unicenta/ Exec=/usr/bin/unicenta/start.sh Icon=/usr/bin/unicenta/unicentaopos.ico
要创建启动器,只需按CTRL + ALT + T即可打开终端。
键入cd Desktop
(如果是荷兰语则为Bureaublad)(区分大小写)
输入nano unicenta.desktop
。 复制并粘贴上述代码。
按CTRL + O保存即可。 关闭是按CTRL + X. 输入chmod +x unicenta.desktop
。
准备。
在尝试启动Spring Boot SysVinit服务时,我遇到了Unable to access jarfile
。
原来, /srv/myapp/
的目录和内容有错误的所有权。
运行sudo sh -c "chown -R myapp:myapp /srv/myapp/ && chmod -R u=rx,g=,o= /srv/myapp"
为所有相关文件和目录提供了正确的所有权和权限。