2015-04-15 3 views
1

Я использую Eclipse Mars. У меня есть время выполнения сервера, настроенное в eclipse для Tomcat8.Запустите Java-сервлет maven webapp в tomcat в eclipse

Я создал проект maven webapp с очень простым сервлетом, который выполняет только команду sysout(), когда выполняется инициализация (overriden).

Я пытаюсь запустить webapp в tomcat, надеясь увидеть инструкцию sysout при инициализации сервлета. Тем не менее, я чувствую, что ни один из моих классов java на самом деле не компилируется/не строит и не помещается под папку web-inf, потому что tomcat начинается нормально, но я не вижу sysouts.

Когда я иду на локальный хост: 8080/HelloWorld/Я ожидаю, что метод моего сервлета doGet() для запуска (я поставил SYSOUT в этом методе), но вместо этого я получаю 404.

Вот мой макет проекта (standard maven): enter image description here

И мой pom (я удалил ненужные части). Я считаю, что плагины сборки не выполняются, когда я запускаю свой tomcat.

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" ..."> 

    <modelVersion>4.0.0</modelVersion> 
    <groupId>com.company.group</groupId> 
    <artifactId>artifact</artifactId> 
    <version>1.0</version> 
    <packaging>war</packaging> 
    <name>HelloWorld</name> 

    <properties> 
     ... 
    </properties> 

    <dependencies> 
     ... 
    </dependencies> 

    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <configuration> 
        <source>1.7</source> 
        <target>1.7</target> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-war-plugin</artifactId> 
       <configuration> 
        <warName>HelloWorld</warName> 
       </configuration> 
      </plugin> 
     </plugins> 
    </build> 

</project> 

И мой web.xml enter image description here

Вот метод инициализации моего сервлета:

@Override 
public void init(ServletConfig servletconfig) throws ServletException 
{ 
    System.out.println("sysout servlet"); 
} 

И, конечно, я добавил проект к моему TOMCAT конфигурации:

enter image description here

+0

Где вы проверяете выход? – Prashant

+0

Я этого не делаю. Когда я запускаю Spring или struts webapp из eclipse, плагин eclipse-tomcat просто знает, что делать, и строит/компилирует все классы и помещает их в web-inf/classes. Я теперь пытаюсь добиться того же с помощью maven webapp – user1884155

ответ

1

[http://bigleap.co.in/corp/2013/06/running-maven-project-within-eclipse-on-tomcat/][1]. вам точно нужно установить цели для компиляции и запуска проекта maven в eclipse tomact. два гола чистые: instal и tomact7: run.

+0

Я создал две конфигурации, как сказано в учебнике, и запускал их отдельно. Они оба добиваются успеха. Можно ли создать единую конфигурацию с чистым, установочным и tomcat: запустить все в одном? Или если это плохая практика, почему это плохо? – user1884155

Смежные вопросы