无法访问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"为所有相关文件和目录提供了正确的所有权和权限。