Запуск Launch4J из Java-кода? - PullRequest
       7

Запуск Launch4J из Java-кода?

2 голосов
/ 07 сентября 2011

Я использовал launch4j, чтобы обернуть исполняемый файл jar в исполняемый файл в моем файле pom.xml (файл проекта maven) во время компиляции / сборки.

Но возможно ли запустить launch4J из куска Javaкод и динамическое создание оболочки exe при запуске java-приложения, например:

import some.l4j.dependencies.*;
public class L4JTest {
  public static void main(String[] args) {
       Launch4JConfig l4jConfig = new Launch4JConfig ();
       l4jConfig.setJarPath("path-to-jar-to-wrap");
       l4jConfig.setOutfile("test.exe")
       l4jConfig.setDontWrapJar(true);
        ...
       l4jConfig.create();
  }
}

Любые указатели или ссылки на примеры приветствуются!

1 Ответ

3 голосов
/ 07 сентября 2011

Поскольку вы не хотели идти по пути Runtime.getRuntime().exec(..), вам придется повозиться. Мы использовали launch4J, и у нас никогда не было варианта использования, который вы ищете. Я не думаю, что launch4J имеет документированный Java API.

Однако вы можете возиться с задачей Ant, используемой в launch4J, и использовать ее для своих целей здесь. Посмотрите на источник задачи

Вы увидите, что он использует net.sf.launch4j.Builder и net.sf.launch4j.config.Config для "сборки" EXE.

  • удачи!
...