Мне не понятно, зачем вам запускать банку с звонком на exec()
.Учитывая, что вам нужно запустить код в файле .jar из Java-программы, вы можете просто запустить метод main()
, как определено в манифесте jar, и записать его вывод - где бы это ни было.
Использованиеexec()
нормально, когда вам нужно вызвать программу из базовой операционной системы, но есть более простые способы сделать это, если и вызывающий, и вызываемый являются Java-программами.
Теперь, если ваш jar собираетсяизменяется динамически, и вам нужно обновить вашу программу в соответствии с новым jar-файлом, существуют механизмы для перезагрузки ее содержимого, например, посмотрите на этот другой post .