Подтвердить что ты не робот

Maven WebApp с Intellij - процедура

Какова процедура создания Java EE WebApp с Maven и Intellij?

Это то, что я делаю:

  • Файл/Новый/Проект
  • Тип проекта: Maven
  • Создать из архетипа: maven-archetype-webapp

Но когда я создаю сервлет, IntelliJ показывает символ на сервлете: enter image description here

Этот символ является "Java-классом, расположенным вне корня источника". Подробнее см. в разделе "Настройка корней контента"

Если я запускаю проект, я получаю сообщение об ошибке.

Если я помечаю каталог "resources" как "Sources Root", проект работает.

Но если я перезагружу Maven (правый щелчок /maven/ reimport), каталог ресурсов потерял структуру "Source Root".

Я думаю, что в моей процедуре что-то не так.

4b9b3361

Ответ 1

Создайте новую папку под main, названной java. Затем щелкните его правой кнопкой мыши и выберите Отметить каталог как Источники корня. Используйте этот каталог для всех ваших java-кодов, и все должно работать!

Ответ 2

Спасибо Chrkv!

1). Создайте новую папку под основным именем java. Затем щелкните его правой кнопкой мыши и выберите Mark Directory As → Sources Root

2). В структуре проекта/модулях/Web включите флажок для создания java "Roots of Sources"

enter image description here

Теперь я могу использовать правый клик по java/New/Servlet.

Что такое каталог ресурсов? (если я не могу создать сервлет здесь)

Правильно ли это?

Ответ 3

Я также столкнулся с той же проблемой и нашел решение, заменив зависимость:

<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>servlet-api</artifactId>
  <version>2.5</version>
  <scope>provided</scope>
</dependency>

следуя зависимости

<dependency>
      <groupId>javax</groupId>
      <artifactId>javaee-api</artifactId>
      <version>6.0</version>
      <scope>provided</scope>
  </dependency>

после добавления этого и создания java исходного корневого каталога, как упоминалось выше, идея intellij предоставила возможность создания фильтров вместе с веб-службами. Я выполнил шаги из ссылки: http://www.tugay.biz/2013/10/hello-world-web-application-with-maven.html