Внедрение Java EE в Intellij IDEA
У меня довольно сложный проект Java EE, который можно построить отлично от Maven. После импорта его в IDEA я настроил рабочее развертывание WAR-сервера frontend и бэкэнд-EAR на локальный сервер Weblogic 12c. Проект также имеет несколько "общих" артефактов, упакованных как банки и используемых как внешними, так и внешними артефактами. Для развертывания я использовал разрушенные артефакты, чтобы сэкономить время на упаковке/распаковке, все работает нормально до этого момента.
Во время разработки я редактирую некоторые источники Java и пытаюсь перераспределить обновленные артефакты в работающий Weblogic. Я нажимаю Shift + F10, выбираю Redeploy артефакты, вижу, что IDEA создает проект, проект передислоцируется на сервер, и чаще всего я не вижу никаких недавних изменений. Даже если я выбираю проект Rebuild явно, а затем попытаюсь повторно развернуть артефакты после этого, на сервере не будет видно никаких изменений. Единственный безопасный способ внесения изменений в развернутые артефакты - вызывать maven из командной строки, вызывающей цель package
, а затем передислоцировать из IDEA. (Нет JRebel установлен, используется либо в среде IDE, либо в Weblogic, и я хотел бы остаться таким образом).
Это ожидаемое поведение от IDEA? Может ли это быть чем-то конкретным для нашего проекта или что-то глобальное? Должна ли ИДЕЯ узнать, какие проекты необходимо перестроить и переупаковать, а затем правильно перевести артефакты EAR/WAR на сервер? Нужна ли какая-либо помощь с моей стороны для достижения этой цели?
Ответы
Ответ 1
Каковы ваши конфигурации запуска/отладки? Проверьте это, если уже не sois.
в меню быстрого доступа, отредактируйте конфигурации > Окно "Выполнить/отладить конфигурацию":
-
Вкладка "Сервер":
- Действие "update": перезапустите сервер
- Перед запуском: установите 'run maven clean' и 'run maven install'
-
Вкладка "Отклонение"
- вставляет ваше ухо здесь.
Ответ 2
не уверен, что этот конкретный ответ на ваш вопрос, но я могу предложить вам попробовать
Плагин weblogic maven
то вы можете выполнить развертывание из командной строки/или из IDEA с поддержкой maven.
Ответ 3
Даже если ваша конечная цель состоит в том, чтобы выполнить весь процесс, построенный с помощью функций сборки и развертывания IntelliJ, я сначала попробую следующее:
Если ваш проект был настроен правильно в maven, вы должны иметь возможность загрузить maven pom.xml внутри вас IntelliJ. Все команды maven build и настройки развертывания, которые вы делали через командную строку mvn, будут отображаться на панели IntelliJ maven в хорошей трех структуре.
Если это сработает, то, очевидно, одна из библиотек, созданных в вашей сборке IntelliJ, не будет правильно размещена в нужном месте. Вам нужно сузить, на какой из банок, уха или на войну должно повлиять одно изменение, которое вы делаете, а затем проверить, обновляется ли дата файла в том месте, где оно должно быть развернуто.
Чтобы обернуть, мое скромное sugestion, однако, должно использовать либо maven, либо gradle панели intelliJ для ваших проектов J2EE. Поскольку вы достигаете определенной цели, чтобы ваш проект был полностью построен через идею IntelliJ. Также независимо от того, какой плагин вы добавляете в свой maven, вы обнаружите в панели идей maven/gradle. Это довольно простой подход, и вы получаете мощные и гибкие инструменты развертывания и сборки внутри IntelliJ, как и ваши пожелания.