java - 在maven jetty插件中使用@WebServlet注释

标签 java eclipse maven servlets jetty

我使用 Maven 插件在我的 ecplise 中构建了一个 Web 应用程序 我想在 jetty 调试它。

这是我的代码:

@WebServlet(name="Startup",value="/", urlPatterns = {}, loadOnStartup = 1)
public class Startup extends HttpServlet {
    private static final long serialVersionUID = 1L;

    /**
     * @see Servlet#init(ServletConfig)
     */
    @Override
    public void init(ServletConfig config) throws ServletException {
        System.out.println("start up");
        QCloud.setupSDK();
    }

这是 pom:

<plugin>
            <groupId>org.eclipse.jetty</groupId>
            <artifactId>jetty-maven-plugin</artifactId>
            <version>9.3.0.M2</version>

            <configuration>
                <stopPort>8889</stopPort>
                <useTestClasspath>false</useTestClasspath>
                <webAppConfig>
                    <contextPath>/${project.name}</contextPath>
                </webAppConfig>

            </configuration>
        </plugin>

当我启动 jetty 服务器时。没有错误显示。我可以看到索引页。 但我无法访问我的 servlet。 servlet 似乎还没有通过 jetty 服务器初始化。 然后我构建一个 war 并将其放入 tomcat 服务器的 webapps 中。 一切正常,servlet 初始化成功,有人知道为什么吗?

最佳答案

我不知道这是否是你的情况,但我在 Jetty 上遇到了类似的问题。

使用注释时,不再需要 web.xml 文件,因此,如果您有该文件,请将其删除(即使内部没有映射 servlet),这样就可以解决问题了。

另请注意,valueurlPatterns@WebServlet 的必需属性> 注释,但不应同时使用两者。

关于java - 在maven jetty插件中使用@WebServlet注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44748371/

相关文章:

java - 在 Loop 内部创建多个 Java 对象并使用外部的所有对象

java - 使用 Shiro 、 NullPointerException 时对 Spring 进行注释

Java奇怪的赋值问题

java - 如何让maven在编译时只考虑一组重复文件中的一个?

Maven 资源插件资源的平面副本

java - 从 Java 解析 Cobol 字段描述

java - 在 Java 中等待

java - 如何在NetBeans 8.2中将chrome作为选项卡运行?

Android Eclipse Debug模式 - 线程

java - 使用 tomcat7-maven-plugin 时在哪里配置 jarsToSkip 选项