У меня есть сервлет, который выполняет сборку ANT, я прикрепил org.apache.tools.ant.listener.Log4jListener, как вы можете видеть ниже и в конце сборки org.apache.tools.ant.listener.Log4jListener не выпущен, единственный способ, который я нашел для этого - перезапустить Tomcat.Если я не перезагружаю Tomcat в следующий раз, когда я пытаюсь запустить сборку, org.apache.tools.ant.listener.Log4JListener ничего не записывает в журнал.проект, который я затем имею в настройке log4j.xml для прослушивания выходных данных и приложение org.apache.log4j.jdbc.JDBCAppender, которое отправляет протоколирование в таблицу базы данных.1005 *
Project p = new Project();
p.setUserProperty("ant.file", buildFile.getAbsolutePath());
try {
Log4jListener l4j = new Log4jListener();
p.addBuildListener(l4j);
p.fireBuildStarted();
p.init();
ProjectHelper helper = ProjectHelper.getProjectHelper();
p.addReference("ant.projectHelper", helper);
helper.parse(p, buildFile);
p.executeTarget("war");
p.fireBuildFinished(null);
p.removeBuildListener(l4j);
} catch (BuildException e) {
p.fireBuildFinished(e);
}