2012-03-05 3 views
2

Я создаю небольшую программу Java для пользователя Mac, который является абсолютным новичком, когда дело доходит до вычислений. Поэтому я хотел бы дать ему один файл для выполнения, возможно, через скрипт. Раньше я просто дал файл .jar, который будет работать отлично, но теперь мне нужно добавить аргументы VM (максимальное кучное пространство). К сожалению, я не очень хорошо разбираюсь в OSX. До сих пор я был в состоянии дать .jar и файл .command, содержащий текстJava: 1-click Mac исполняемый файл, включая аргументы VM

#!/bin/bash 

java -jar -ms128m -mx512m -jar file.jar 

Однако это дает сообщение "Файл не может быть выполнена, потому что у вас нет соответствующих прав доступа. Одно из решений - использовать sudo в консоли, но я боюсь, что это слишком сложно. Поэтому мой вопрос:

  • могу ли я сделать команду .command или другой скрипт запускать java .jar-файл, не входя в консоль?
  • или, могу ли я обернуть файл .jar в какой-то исполняемый файл Mac, включая аргументы VM? Я нашел аналогичное решение (Launch4j) для окон.
  • или, может быть, есть еще один способ предоставить простой почтовый загружаемый исполняемый файл, который запускает java-программу, но без установки каких-либо других программ?

Редактировать: У меня нет неограниченного доступа к Mac, поэтому мне нужно решение, для которого не требуется Mac при каждом обновлении файла .jar.

Большое спасибо!

+0

chmod + x является вашим другом –

+0

Файл исполняется (755) в Linux, выполняет ли данный переход на Mac? Боюсь, я не могу попросить пользователя сделать chmod (консоль уже слишком сложно объяснить) – tb189

ответ

2
  1. Если у вас есть Mac, вы можете опробовать Jar Bundler. Он поставляется с XCode или, возможно, вы можете найти его здесь https://developer.apple.com/downloads. С помощью этого приложения вы можете сделать одно нажатие Mac Executable.

  2. Я не знаю, возможно ли это с помощью Windows Eclipse версии. Перейдите в Main-Class, откройте контекстное меню и запустите диалог «Экспорт». Найдите Комплект приложений для Mac OS X и выполните следующие действия.

  3. Создайте дополнительный Java-класс «стартер», который снова запустится. Вы можете позвонить с ProcessBuilder еще одним банком, подобным этому java -Xms1024M -Xmx1024M -jar app.jar.

+0

Боюсь, у меня его нет.Я мог бы заимствовать один для целей разработки на короткое время, но я хотел бы найти метод, который я могу также отправлять обновлениям (т. Е. Новый .jar-файл). К сожалению, мои руки на mac при каждом изменении программы, к сожалению, не возможны. – tb189

+0

Я вижу - это может быть проблемой. Добавил еще один способ ответа. – alexvetter

+0

Спасибо за обновление! Я нахожусь в Linux, но это не в моем экспорте - другое. Похоже, что это не плагин при поиске, просто стандартные функции при запуске eclipse на mac, или я ошибаюсь? Могу ли я установить этот пакет приложений в виде плагина eclipse? – tb189

1

Вы можете легко создать исполняемый файл Mac. Вы должны создать каталог с расширением .app и поместить туда свои файлы. Он должен содержать подкаталог под названием Contents, где вы должны поместить файл с именем Info.plist, где вы можете указать параметр JVM и многое другое. Например, вы можете использовать пакет IntelliJ Community Edition.

+0

Чтобы быть уверенным: - создать папку с именем program.app, создать содержимое вложенной папки, содержащее информацию о файле. PLIST с Java VMOptions -Xmx512m, добавьте .jar в папку Contents, а затем? Нужно ли добавлять какие-либо другие ключи? Что вы делаете для запуска программы? – tb189

+0

Я бы скопировал файл info.plist из IntelliJ и заменил только те части, которые относятся к вашей программе. В результате вы получите пакет приложений, который вы можете просто щелкнуть и запустить (как и любое другое приложение Mac). –

Смежные вопросы