Web applications Maven';s tomcat:runmojo不';我看不到我的servlet
我有一个由Maven管理的简单WAR项目。我在Web applications Maven';s tomcat:runmojo不';我看不到我的servlet,web-applications,tomcat,maven,Web Applications,Tomcat,Maven,我有一个由Maven管理的简单WAR项目。我在src/main/java/*下有servlet代码,在src/main/webapp下有所有静态内容(HTML、图像等)。我可以在我们的临时JBoss服务器上部署由此产生的WAR,它可以工作,但是重新部署的往返过程非常缓慢。我希望能够在嵌入式Tomcat上本地测试更改,但我遇到了一些问题 servlet映射是在src/main/resources/web.xml中设置的——我认为它是正确的;相关部分看起来像 <servlet> &l
src/main/java/*
下有servlet代码,在src/main/webapp
下有所有静态内容(HTML、图像等)。我可以在我们的临时JBoss服务器上部署由此产生的WAR,它可以工作,但是重新部署的往返过程非常缓慢。我希望能够在嵌入式Tomcat上本地测试更改,但我遇到了一些问题
servlet映射是在src/main/resources/web.xml
中设置的——我认为它是正确的;相关部分看起来像
<servlet>
<servlet-name>myServ</servlet-name>
<servlet-class>my.pkg.MyServ</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>myServ</servlet-name>
<url-pattern>/ms</url-pattern>
</servlet-mapping>
迈瑟夫
my.pkg.MyServ
迈瑟夫
/ms
Maven告诉我它在localhost:8080/myprojectname
上运行,事实上,当我去那里时,我可以看到静态内容。但是,我尝试了localhost:8080/myprojectname/ms
以及``localhost:8080/ms`--前者给我一个404,后者给我一个0字节的响应
简而言之:我的活动内容在哪里?我在控制台上什么也看不到。看起来Maven创建了一个target/tomcat/logs
,但它是空的target/tomcat/webapps
也是空的,当我运行mvn-tomcat:run-X
时,我得到了很多调试输出,包括对我所有JAR依赖项的引用,一个指向target/classes
的classesDir
属性(这是正确的),但没有提到我设置的URL模式,也不是作为处理程序调用的Servlet类的名称。我觉得我应该告诉Maven或Tomcat如何找到web.xml,或者用另一种方式指定URL映射。。。。如果你不知道,我是新来的:D
ETA:我的设置看起来非常像,尽管我们的问题看起来有所不同。比我想象的简单:虽然POM设置为使用
src/main/resources/web.xml
,但这不是放置它的“正确”位置。将它移动到src/main/webapp/META-INF
使servlet出现——当然,这导致了项目设置中的十几个错误,但这是另一天的故事。是的,我也遇到了同样的问题。Glassfish4看到了servlet,而Tomcat8没有看到。