Выполнение проблем с файлом .jar [dубликат]

Я знаю, что для выполнения файла я использую команду ., а затем имя файла с пробелом между ними. Но я пытаюсь выполнить файл .jar с помощью ., и он не работает. Я вошел в свойства и пометил его как исполняемый файл и запустил его с помощью Java.

Есть ли способ выполнить файл с Java в Bash Terminal?

Я пытаюсь выполнить файл Minecraft.jar.

84
задан 6 February 2012 в 07:51

16 ответов

Синтаксис . может использоваться только для запуска сценариев оболочки (sourcing).

Вам нужно будет использовать команду java для запуска файла .jar: [ ! d1] java -jar Minecraft.jar

Если у вас нет java, вы можете исправить это, установив пакет default-jre ¹. Вы можете увидеть, есть ли у вас уже установлен java при запуске в терминале:

java -version

[1]: Это установит стандартную среду Java openjdk для Java. Вместо этого вы можете использовать openjdk-8-jre или openjdk-7-jre или openjdk-6-jre, если хотите - в зависимости от того, что доступно в вашей версии Ubuntu.

129
ответ дан 18 July 2018 в 02:47

Синтаксис . может использоваться только для запуска сценариев оболочки (sourcing).

Вам нужно будет использовать команду java для запуска файла .jar: [ ! d1] java -jar Minecraft.jar

Если у вас нет java, вы можете исправить это, установив пакет default-jre ¹. Вы можете увидеть, есть ли у вас уже установлен java при запуске в терминале:

java -version

[1]: Это установит стандартную среду Java openjdk для Java. Вместо этого вы можете использовать openjdk-8-jre или openjdk-7-jre или openjdk-6-jre, если хотите - в зависимости от того, что доступно в вашей версии Ubuntu.

129
ответ дан 24 July 2018 в 17:39
[F1]
1
ответ дан 18 July 2018 в 02:47

Вы также можете сделать приятную запись для приложения в Unity. выполните следующие команды:

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, так как они не обеспечивают загрузку ..

4
ответ дан 18 July 2018 в 02:47
Откройте командную строку с помощью CTRL + ALT + T Перейдите в каталог файлов .jar. Если ваша версия / аромат Ubuntu поддерживает его, вы можете щелкнуть правой кнопкой мыши по каталогу файла «.jar» и нажать «Открыть в терминале» Введите следующую команду: java -jar jarfilename.jar

Таким образом, ваш " .jar "будет выполнен.

2
ответ дан 18 July 2018 в 02:47

Установите jarwrapper. После этого (и добавив исполняемый бит) вы можете запустить файл jar, просто введя имя jarfile.

sudo apt-get install jarwrapper

Это работает, используя binfmt, чтобы добавить поддержку нового двоичного формата в ядро.

2
ответ дан 18 July 2018 в 02:47

Linux вполне способен запускать внешний двоичный файл, например JAR-файл. Так работает вино, например. Для запуска JAR-файлов в качестве исполняемого файла выполните следующие действия в консоли

sudo apt-get install binfmt-support

Cd в ваш JAR-файл и измените его на исполняемый файл (вы также можете сделать это с помощью свойств файла в Nautilus)

chmod a+rx myjar.jar

Запустите файл jar так же, как если бы это был любой другой исполняемый файл или сценарий оболочки

./myjar.jar
24
ответ дан 18 July 2018 в 02:47

, если вы хотите установить свою банку с конкретной версией java. Укажите каталог java также

/scratch/app/product/Software/jdk1.8.0_112/bin/java -jar /path-to-jar/Minecraft.jar
0
ответ дан 18 July 2018 в 02:47

Если это исполняемый jar, то

java -jar Minecraft.jar

Не все jar-архивы содержат исполняемый класс, объявленный для запуска в файле манифеста, но если есть, это будет работать. [ ! d1]

Btw: Вы не запускаете большинство программ из оболочки с точкой. Точка - это ярлык для source, и он работает только в bash и некоторых других оболочках, чтобы включить скрипт в область текущего сеанса.

Скомпилированный двоичный xybin просто начинается с его имени, если он находится в пути:

xybin

или, с его абсолютным путем:

/home/foo/proj/test/xybin

или с его относительным путем:

proj/test/xybin

или если вы попали в каталог файла с этим относительным путем:

./xybin

Файл должен быть (см. chmod). Все вышесказанное верно и для shellscripts, но у них часто есть расширение .sh, и вы можете запустить shellscript, вызвав интерпретатор, и тогда его не нужно отмечать как исполняемый файл:

bash xy.sh

Если вы не хотите запускать новый bash, вы можете использовать источник, и вы это делаете, чтобы использовать определения функций, псевдонимы и параметры переменных.

13
ответ дан 18 July 2018 в 02:47
[F1]
1
ответ дан 24 July 2018 в 17:39

Вы также можете сделать приятную запись для приложения в Unity. выполните следующие команды:

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, так как они не обеспечивают загрузку ..

4
ответ дан 24 July 2018 в 17:39
Откройте командную строку с помощью CTRL + ALT + T Перейдите в каталог файлов .jar. Если ваша версия / аромат Ubuntu поддерживает его, вы можете щелкнуть правой кнопкой мыши по каталогу файла «.jar» и нажать «Открыть в терминале» Введите следующую команду: java -jar jarfilename.jar

Таким образом, ваш " .jar "будет выполнен.

2
ответ дан 24 July 2018 в 17:39

Установите jarwrapper. После этого (и добавив исполняемый бит) вы можете запустить файл jar, просто введя имя jarfile.

sudo apt-get install jarwrapper

Это работает, используя binfmt, чтобы добавить поддержку нового двоичного формата в ядро.

2
ответ дан 24 July 2018 в 17:39

Linux вполне способен запускать внешний двоичный файл, например JAR-файл. Так работает вино, например. Для запуска JAR-файлов в качестве исполняемого файла выполните следующие действия в консоли

sudo apt-get install binfmt-support

Cd в ваш JAR-файл и измените его на исполняемый файл (вы также можете сделать это с помощью свойств файла в Nautilus)

chmod a+rx myjar.jar

Запустите файл jar так же, как если бы это был любой другой исполняемый файл или сценарий оболочки

./myjar.jar
24
ответ дан 24 July 2018 в 17:39
  • 1
    Благодаря! Это именно то, что я искал. Это лучше, чем использование java -jar, потому что не требуется, чтобы хост-программа знала, что это Java-программа, и это лучше, чем использование скрипта, потому что вам не нужно беспокоиться о прохождении через STDIN и OUT. – srlm 6 December 2013 в 11:34
  • 2
    Не работает в Debian 9: «недопустимый файл (неправильный магический номер): ошибка формата Exec & quot; – Paul 30 August 2017 в 00:52

, если вы хотите установить свою банку с конкретной версией java. Укажите каталог java также

/scratch/app/product/Software/jdk1.8.0_112/bin/java -jar /path-to-jar/Minecraft.jar
0
ответ дан 24 July 2018 в 17:39

Если это исполняемый jar, то

java -jar Minecraft.jar

Не все jar-архивы содержат исполняемый класс, объявленный для запуска в файле манифеста, но если есть, это будет работать. [ ! d1]

Btw: Вы не запускаете большинство программ из оболочки с точкой. Точка - это ярлык для source, и он работает только в bash и некоторых других оболочках, чтобы включить скрипт в область текущего сеанса.

Скомпилированный двоичный xybin просто начинается с его имени, если он находится в пути:

xybin

или, с его абсолютным путем:

/home/foo/proj/test/xybin

или с его относительным путем:

proj/test/xybin

или если вы попали в каталог файла с этим относительным путем:

./xybin

Файл должен быть (см. chmod). Все вышесказанное верно и для shellscripts, но у них часто есть расширение .sh, и вы можете запустить shellscript, вызвав интерпретатор, и тогда его не нужно отмечать как исполняемый файл:

bash xy.sh

Если вы не хотите запускать новый bash, вы можете использовать источник, и вы это делаете, чтобы использовать определения функций, псевдонимы и параметры переменных.

13
ответ дан 24 July 2018 в 17:39

Другие вопросы по тегам:

Похожие вопросы: