我使用 Eclipse Mars。我在 eclipse 中为 Tomcat8 配置了一个服务器运行时。
我用一个非常简单的 servlet 创建了一个 maven webapp 项目,它只在(覆盖的)init 运行时执行 sysout() 语句。
我试图在 tomcat 中运行 webapp,希望在 servlet 初始化时看到 sysout 语句。但是,我的印象是我的 java 类实际上没有被编译/构建并放在 web-inf 文件夹下,因为 tomcat 启动正常,但我看不到任何系统输出。
当我转到 localhost:8080/HelloWorld/时,我希望我的 servlet 的 doGet() 方法运行(我还在该方法中放置了一个系统输出),但我却得到了 404。
这是我的项目布局(标准 maven):
还有我的 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
这是我的 servlet 的初始化方法:
@Override
public void init(ServletConfig servletconfig) throws ServletException
{
System.out.println("sysout servlet");
}
当然,我将项目添加到我的 tomcat 配置中:
最佳答案
[ http://bigleap.co.in/corp/2013/06/running-maven-project-within-eclipse-on-tomcat/][1] .您确实需要设置目标以在 eclipse tomact 中编译和运行 maven 项目。两个 objective-c lean:instal 和 tomact7:run。
关于java - 在 eclipse 的 tomcat 中运行一个 java servlet maven webapp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29647535/