Žinau, kad norėdamas paleisti failą, naudoju komandą .
, tada failo pavadinimą ir tarp jų tarpą. Tačiau bandau paleisti .jar failą naudodamas .
ir tai neveikia. Nuėjau į ypatybes ir pažymėjau jį kaip vykdytiną ir padariau, kad jis būtų paleistas su Java.
Ar yra koks nors būdas paleisti failą su "Java" Bash terminale?
Bandau įvykdyti Minecraft.jar failą.
Sintaksė .
gali būti naudojama tik apvalkalo scenarijams paleisti (naudojant "sourcing").
Norėdami paleisti .jar
failą, turite naudoti java
komandą:
java -jar Minecraft.jar
Jei neturite įdiegtos "java", galite tai išspręsti įdiegę default-jre
¹ paketą. Ar jau turite įdiegtą java, galite patikrinti paleidę terminalą:
java -version
[1]: Tai įdiegs numatytąją openjdk "Java" paleidimo sistemą. Jei pageidaujate, galite naudoti openjdk-8-jre
, openjdk-7-jre
arba openjdk-6-jre
- priklausomai nuo to, kuri iš jų yra jūsų "Ubuntu" versijoje.
"Linux" puikiai gali paleisti svetimą dvejetainį failą, pavyzdžiui, JAR failą. Pavyzdžiui, taip veikia "Wine". Norėdami paleisti JAR failus kaip vykdomąjį failą, konsolėje atlikite šiuos veiksmus
sudo apt-get install binfmt-support
Cd prie savo JAR failo ir pakeiskite jį į vykdomąjį (tai taip pat galite padaryti per failo savybes "Nautilus")
chmod a+rx myjar.jar
Paleiskite savo JAR failą taip, tarsi tai būtų bet kuri kita dvejetainė vykdomoji programa arba apvalkalo scenarijus
./myjar.jar
Pastaba: įsitikinkite, kad turite binfmt_misc Linux branduolio modulį. Jei naudosite savo sukompiliuotą branduolį be šio modulio, binfmt-support neveiks.
Jei tai yra vykdomasis stiklainis, tada
java -jar Minecraft.jar
Ne visuose jar archyvuose yra vykdomoji klasė, deklaruojama paleidimui Manifest faile, bet jei yra, tai veiks.
Btw.: daugumos programų iš apvalkalo nepaleidžiate su tašku. Taškas yra source
trumpinys, ir jis veikia tik bash ir kai kuriose kitose kriauklėse, kad įtrauktų skriptą į dabartinės sesijos sritį.
Sukompiluotas dvejetainis kodas xybin tiesiog paleidžiamas su jo pavadinimu, jei jis yra kelyje:
xybin
arba absoliučiu keliu:
/home/foo/proj/test/xybin
arba su santykiniu keliu:
proj/test/xybin
arba, jei atsitiktinai esate failo kataloge, su šiuo santykiniu keliu:
./xybin
Failas turi būti pažymėtas kaip vykdytinas (žr.: chmod). Visa tai, kas išdėstyta pirmiau, galioja ir apvalkalo scenarijams, tačiau jie dažnai turi plėtinį .sh, ir jūs galite paleisti apvalkalo scenarijų iškviesdami interpretatorių, tada jo nereikia pažymėti kaip vykdytino:
bash xy.sh
Jei nenorite'paleisti naujo bash, galite naudoti šaltinį, ir tai padarysite, norėdami vartoti funkcijų apibrėžtis, slapyvardžius ir kintamųjų nustatymus.