Эквивалент .sh и .bat с двойным щелчком на Mac?

Я распространяю программу Java, в которой я хочу, чтобы запускался файл с двойным щелчком

java -cp MyProgram.jar;MyLib.jar my.program.Main

В Windows я просто распространяю файл .bat, для *nix — исполняемый файл .sh. Проблема в том, что двойной щелчок по файлу .sh просто открывает его в текстовом редакторе на Mac. Что мне делать для Mac?


person Epaga    schedule 26.02.2009    source источник
comment
Еще один полезный связанный вопрос: stackoverflow.com/questions /14065069/.   -  person Edward    schedule 05.10.2018


Ответы (4)


На Mac есть специальное расширение для выполнения сценариев оболочки двойным щелчком по ним: это .command.

person mouviciel    schedule 26.02.2009
comment
Это довольно старый вопрос, но для тех, кто получает ошибку <file>.command could not be executed because you do not have appropriate access privileges., как и я, выполните в терминале следующее: chmod u+x /path/to/file.command, и это должно избавиться от этой проблемы. - person asherbar; 14.03.2015
comment
@user2016436 user2016436 Я не хочу добавлять chmod u+x для запуска файла, так как исполняемый файл будет запускаться на клиенте. что я должен делать? - person Mr_Green; 12.09.2015

Для приложений Java на Mac вам действительно следует использовать Apple Jar Bundler (в папке Инструменты разработчика/Приложения/Утилиты; на самом деле это символическая ссылка на /usr/share/java/Tools/Jar Bundler). Он позволяет вам создать правильное приложение для OS X с возможностью двойного щелчка, включая настройку параметров, например. используя панель инструментов Mac, версию JVM, графическую систему, метаданные приложения OS X и classpath/resources.

person Barry Wark    schedule 26.02.2009

Вы можете использовать .sh (скрипт оболочки), ведь MacOSX — это Unix!

person Till    schedule 26.02.2009

Ответ об использовании инструмента Jar Bundler правильный, но если вы хотите использовать файл .sh, убедитесь, что разрешения unix правильно установлены на что-то вроде 755 с помощью CHMOD, и убедитесь, что первая строка содержит путь к установленной оболочке. по умолчанию в Mac OS X. Также обратите внимание, что даже с установленным битом +x он все равно может спрашивать пользователя, хотят ли они открыть его или запустить.

person Noah    schedule 12.11.2009