Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Web applications Maven';s tomcat:runmojo不';我看不到我的servlet_Web Applications_Tomcat_Maven - Fatal编程技术网

Web applications Maven';s tomcat:runmojo不';我看不到我的servlet

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

我有一个由Maven管理的简单WAR项目。我在
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没有看到。