Как сделать EXE из TornadoFX JAR?

У меня есть простой проект на JavaFX/TornadoFX на Windows, который собирается в JAR и корректно выполняется из-под IntelliJ IDEA и в установленной на моем компьютере JRE. Я хочу сделать так, чтобы этот проект мог выполняться на любом компьютере под Windows без предварительно установленной JRE.

Для этого в IntelliJ я создал сборку "JavaFx application" и настроил ее так, как написано в инструкции к TornadoFX:

настройки проекта

настройки проекта

Исполнимый файл собирается успешно, но когда я пытаюсь запустить его то выводится ошибка «No method main in class com/example/demo/app/MyApp.»

Я пытался добавить main в код проекта, как это написано в инструкции к TornadoFX, но не могу указать этот метод в настройках проекта - кнопка ОК не активна.

настройки проекта, выбор главного класса

Автоматически можно добавить только класс MyApp, но он разумеется метод main не содержит.

настройки проекта, выбор главного класса

Что я делаю не правильно и как мне всё-таки сделать исполнимый файл под Windows?

Вот код:

MyApp.kt

package com.example.demo.app

import com.example.demo.view.MainView
import tornadofx.App
import tornadofx.launch

class MyApp: App(MainView::class, Styles::class)

fun main(args: Array<String>) {
    launch<MyApp>(args)
}

Ответы (1 шт):

Автор решения: Alex

Я ещё раз внимательно перечитал мануал к TornadoFX и увидел маленькую, но важную фразу: "Notice the Kt at the end.". Оказывается нужно было вручную дописать в поле "Application class" символы "Kt" в конец и всё заработало как я и хотел.

введите сюда описание изображения

→ Ссылка