背景:
很多时候,java web项目并非理想情况,只需要,new一个server,add下项目,启动tomcat就可以运行
案例
有一项目没有webcontent目录,目录是webroot,这个时候在server里,无论如何也无法添加,启动tomcat只是单纯的启动了tomcat项目并没有启动
解决办法
1.找到项目属性里,project Facets,点击蓝色链接,右侧出现了列表,勾选,Dynamic Web Module 3.0,点击aplay
这个时候在new服务,就可以看到项目了
2.此时添加项目,重新运行发现,项目的编译信息还是没有出现,项目运行失败
3.删除此服务,以及tomcat,再新建,在server.xml里添加项目信息
<Context docBase="D:\depWorkSpace\shqd\WebRoot" path="" debug="1" reloadable="true"/>
4.注意path和doBase不要写反了,写反了报错
严重: Error starting static Resources
javax.management.MalformedObjectNameException: Invalid character ':' in value part of property
at javax.management.ObjectName.construct(ObjectName.java:618)
at javax.management.ObjectName.<init>(ObjectName.java:1382)
at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:5085)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5235)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
原因是
<Context path="D:\depWorkSpace\shqd\WebRoot" docBase="" ></Context>
中错吧docBase的值配置到了path上面去了,改成:
<Context docBase="D:\depWorkSpace\shqd\WebRoot" path="" debug="1" reloadable="true"/>
完成后项目成功运行