Запуск пользовательского Dita-OT из приложения Java

Итак, у меня есть программа на Java, которая извлекает некоторые данные из разных мест и записывает файлы DITA. Я также хочу иметь файл PDF, для которого я создал собственный плагин DITA-OT. Обычно я запускаю Dita-OT после выполнения моей программы, но что, если я хочу запустить Dita-OT также автоматически? Как это могло быть достигнуто?

Поэтому я хотел бы упаковать свой пользовательский Dita-OT с моим приложением Java, чтобы приложение Java могло автоматически генерировать файл PDF в конце. Кто-то сделал что-то подобное или имеет другие указатели?

Я думал о том, чтобы упаковать DITA-OT в папку ресурсов моего Java-проекта, из которой я буду запускать DITA-OT, но я думаю, что это не сработает, когда я упакую свое приложение внутри jar.


person burm    schedule 12.08.2015    source источник


Ответы (2)


Вы можете автоматизировать все эти вещи с помощью Ant или Gradle. Вы можете скачать/установить Open Toolkit и начать трансформацию. Упаковка Open Toolkit вместе с вашим приложением увеличила бы размер вашего приложения, так что это, вероятно, более элегантно. Или вы можете более внимательно изучить дост. баночка.

person Stefan Eike    schedule 12.08.2015

Вы не можете просто упаковать DITA-OT в JAR, потому что Ant в DITA-OT не сможет читать ресурсы из загрузчика классов. Самый простой способ — просто установить DITA-OT туда, где ваше приложение имеет доступ для чтения, а затем запустить процесс Ant DITA-OT. Вы также можете

  • Создайте новую JVM и запустите там DITA-OT.
  • Используйте текущую JVM и запустите объект Ant Project с DITA-OT build.xml.

Первый даст вам уверенность в том, что DITA-OT не остановит ваше приложение с помощью OutOfMemoryError, но второй будет работать быстрее, как только JVM прогреется.

person jelovirt    schedule 12.08.2015