Есть хороший проект Launch4j и замечательный пакер для jRuby проектов, основанный на ней: rawr. Стоит отметить, что он не содержит среду исполнения, в отличие от описанного в топике решения.
Да тут никакой магии, установщик подразумевает, что она уже стоит у клиента на машине либо предлагает ее скачать с сайта Оракла. Думаю, это сделано не просто из вредности, а из-за перепонов, который сам Оракул и придумал.
Есть форк AppBundler для Mac, который работает лучше:
— Фиксит баг с File.exists (он НЕ работает на Mac в 1.7 и в 1.8 без лямбд)
— Может указывает программу как обработчик определнных расширений
— Можно указать любое название исполняемого файла
— Корректно грузит иконку
— Корректно прописывает переменные окружения для работы в sandbox
Быстрый способ создать установщик для Java программы