Я хотел бы объединить виртуальную машину Java и мой код .java (или скомпилированные файлы .class) в один исполняемый файл. Как я могу это сделать?
GCJ в основном работает так, но зависит от библиотек путей к классам GNU и не полностью совместим со стандартом Java (может не поддерживать некоторые функции языка и части стандартного API).
Я действительно сомневаюсь, что вам разрешено делать это с точки зрения лицензирования. Вы собираетесь позволить конечному пользователю использовать программное обеспечение, не пропуская его через принятие лицензии JVM.