У меня есть несколько EJB, скомпилированных с помощью Weblogic EJBC, совместимого с Weblogic 9.2.1. Наш клиент использует Weblogic 9.2.3. При запуске сервера Weblogic выдает следующее сообщение:<BEA-010087> <The EJB deployment named: YYY.jar is being recompiled within the WebLogic Server. Please consult the server logs if there are any errors. It is also possible to run weblogic.appc as a stand-alone tool to generate the required classes. The generated source files will be placed in .....>
Следовательно, запуск сервера занимает 1,5 часа вместо 20 мин. Следующий запуск сервера занимает точно такое же время, то есть Weblogic не кэширует продукты перекомпиляции. Излишне говорить, что мы не можем перекомпилировать все наши EJB в версию 9.2.3 только для этого конкретного клиента, поэтому нам нужно решение на месте.
Мои вопросы:
1. Есть ли каким-либо образом указать Weblogic оставить эти файлы EJB как есть и избежать повторной компиляции во время запуска сервера?
2. Могу ли я указать Weblogic кэшировать перекомпилированные компоненты EJB, чтобы избежать длительных перезапусков?
Наш текущий обходной путь состоял в том, чтобы написать сценарий, который выполняет эту перекомпиляцию вручную перед созданием и развертыванием EAR (простым запуском java weblogic.appc ‹jar-name›), но мы предпочел бы избежать использования этого решения в производстве.