Я знаю, что для выполнения файла я использую команду .
, затем имя файла с пробелом между ними. Но я пытаюсь выполнить файл .jar, используя команду .
, и это не работает. Я зашел в свойства и пометил его как исполняемый и заставил его запускаться с Java.
Есть ли способ выполнить файл с Java в терминале Bash?
Я пытаюсь выполнить файл Minecraft.jar.
Синтаксис .
можно использовать только для запуска (путем "сорсинга") сценариев оболочки.
Для запуска файла .jar
необходимо использовать команду java
:
java -jar Minecraft.jar
Если у вас не установлена java, вы можете исправить это, установив пакет default-jre
¹. Вы можете проверить, установлена ли у вас java, запустив в терминале:
java -version
[1]: Это установит стандартную среду выполнения openjdk Java. Вы можете использовать openjdk-8-jre
, или openjdk-7-jre
, или openjdk-6-jre
вместо этого, если вы предпочитаете - в зависимости от того, что доступно в вашей версии Ubuntu.
Linux вполне способен запустить посторонний двоичный файл, например JAR-файл. Так работает, например, Wine. Чтобы запустить JAR-файлы как исполняемые, выполните в консоли следующие действия
sudo apt-get install binfmt-support
Cd к вашему JAR-файлу и измените его на исполняемый (вы также можете сделать это через свойства файла в Nautilus)
chmod a+rx myjar.jar
Запустите ваш jar-файл, как любой другой двоичный исполняемый файл или сценарий оболочки.
./myjar.jar
Примечание: Убедитесь, что у вас загружен модуль binfmt_misc ядра linux. Если вы используете ваше собственное скомпилированное ядро без этого модуля, binfmt-support не будет работать.
Если это исполняемый jar, то
java -jar Minecraft.jar
Не все jar-архивы содержат исполняемый класс, объявленный для запуска в файле Manifest, но если он есть, то это сработает.
Btw..: Вы'не запускаете большинство программ из оболочки с помощью точки. Точка - это сокращение для source
, и оно работает только в bash и некоторых других оболочках, чтобы включить скрипт в область действия текущей сессии.
Скомпилированный бинарник xybin просто запускается с его именем, если он есть в пути:
xybin
или с его абсолютного пути:
/home/foo/proj/test/xybin
или с относительным путем:
proj/test/xybin
или, если вы находитесь в директории файла, с этим относительным путем:
./xybin
Файл должен быть помечен как исполняемый (см.: chmod). Все вышесказанное справедливо и для shell-скриптов, но они часто имеют расширение .sh, и вы можете запустить shell-скрипт, вызвав интерпретатор, и тогда он не должен быть помечен исполняемым:
bash xy.sh
Если вы'не хотите запускать новый bash, вы можете использовать исходники, что вы и делаете, потребляя определения функций, псевдонимы и настройки переменных.
Вы могли бы также хотите сделать хорошую запись для приложения в единстве. выполните следующие команды:
gedit ~/.local/share/applications/minecraft.desktop
В появившемся окне, копируем и вставляем следующее:
[Desktop Entry]
Type=Application
Name=Minecraft
Comment=Click here to play Minecraft
Exec=java -jar /path/to/minecraft.jar
Icon=/path/to/minecraft/icon.png
Terminal=false
Categories=Game;
Вам может потребоваться выйти из системы и обратно, чтобы увидеть эффект. :) Также вы должны искать в интернете красивую иконку, смотрю в Minecraft, так как они Дон'т дают скачать..
Установите jarwrapper. После этого (и добавлением исполняемый бит) вы можете запустить jar-файла, просто введя имя файла jarfile.
sudo apt-get install jarwrapper
Это работает с помощью binfmt
чтобы добавить поддержку нового бинарного формата для ядра.
Ява -фляга jarfilename.jar
Таким образом вашу ".опарник" и файл будет выполняться.
java -jar /home/username/.minecraft/launcher.jar
если вы хотите установить банку с определенной версией Java Укажите каталог Java также
/scratch/app/product/Software/jdk1.8.0_112/bin/java -jar /path-to-jar/Minecraft.jar