Bash

執行 .bsh 錯誤 (ZereneStacker)

  • May 29, 2019

我正在嘗試在 Linux 上執行 ZereneStacker 程序(我使用的是 Chromebook Samsung 3)。我從這裡下載了程序的 .zip 文件並將其解壓縮。根據該下載頁面,.zip 文件包括:

ZereneStacker          executable launcher

ZereneStacker.bsh      launch script (provided for backward compatibility)

提取後,我cd會進入提取的文件夾ZereneStacker嘗試命令

sudo chmod +x ZereneStacker
sudo ./ZereneStacker

sudo chmod +x ZereneStacker.bsh
sudo ./ZereneStacker.bsh

這兩個輸出都很長,包括以下內容:

Fatal error: /home/user/ZereneStacker/jre/bin/java exists but is not an executable file

我需要進一步更改權限嗎?我是否缺少安裝步驟,還是應該在第一次執行時安裝?


如果有幫助,這是完整的輸出:

sizeof(ptr) = 8
Physical memory = 2986188800
isSafeMode = 0
argv[0] = [/home/user/ZereneStacker/ZereneStacker]
launcherFile = [/home/user/ZereneStacker/ZereneStacker]
sigh... appdir = /home/user/ZereneStacker
arg0 = /home/user/ZereneStacker/ZereneStacker
argc = 1
endDir = /ZereneStacker
length = 33
argsLength = 0
appdir = /home/user/ZereneStacker
appdataName = /root/.ZereneStacker
appdataName = /root/.ZereneStacker
appdataZSName = /root/.ZereneStacker
configFileName = /root/.ZereneStacker/zerenstk.cfg
configFile = 0
mxStringFromConfig = 

mxString = -Xmx1024m
launchCmdFileName = /root/.ZereneStacker/zerenstk.launchcmd
launchOKFileName = /root/.ZereneStacker/zerenstk.launchOK
trying launchParamsFileName = /home/user/ZereneStacker/zerenstk.ini
initialization line = "{appdir}/jre/bin/java" {memsize} -DjavaBits={javaBits} -Dlaunchcmddir="{launchcmddir}" -classpath "{appdir}/ZereneStacker.jar:{appdir}/JREextensions/*" com.zerenesystems.stacker.gui.MainFrame

invocation line before possible tweaking = "/home/user/ZereneStacker/jre/bin/java" -Xmx1024m -DjavaBits=64bitJava -Dlaunchcmddir="/root/.ZereneStacker" -classpath "/home/user/ZereneStacker/ZereneStacker.jar:/home/user/ZereneStacker/JREextensions/*" com.zerenesystems.stacker.gui.MainFrame
argument 0 before tweaking: [/home/user/ZereneStacker/jre/bin/java]
argument 1 before tweaking: [-Xmx1024m]
argument 2 before tweaking: [-DjavaBits=64bitJava]
argument 3 before tweaking: [-Dlaunchcmddir=/root/.ZereneStacker]
argument 4 before tweaking: [-classpath]
argument 5 before tweaking: [/home/user/ZereneStacker/ZereneStacker.jar:/home/user/ZereneStacker/JREextensions/*]
argument 6 before tweaking: [com.zerenesystems.stacker.gui.MainFrame]
argument 7 before tweaking: [(null)]
Invocation line: ["/home/user/ZereneStacker/jre/bin/java" -Xmx1024m -DjavaBits=64bitJava -Dlaunchcmddir="/root/.ZereneStacker" -classpath "/home/user/ZereneStacker/ZereneStacker.jar:/home/user/ZereneStacker/JREextensions/*" com.zerenesystems.stacker.gui.MainFrame ]
statbuf.st_mode = 100644
Fatal error: /home/user/ZereneStacker/jre/bin/java exists but is not an executable file

在 ZereneStacker 支持的幫助下,我想出了以下解決方案:

sudo apt-get update
sudo apt-get upgrade
sudo apt install openjdk-8-jdk
sudo chmod +x ZereneStacker/*.zslinux
sudo chmod +x ZereneStacker/ZereneStacker.bsh
sudo chmod +x ZereneStacker/ZereneStacker
sudo chmod +x ZereneStacker/jre/bin/*
cd ZereneStacker
./ZereneStacker.bsh

即使openjdk-8-jdkZerene Stacker 內置了10.0.1 JRE. 我只試過openjdk-8-jdk

引用自:https://unix.stackexchange.com/questions/520307