eclipse

部署

如果部署项目后发现访问不了,出现404,原因可能是:

1.路径错误

2.web.xml映射路径写错

3.服务器设置

1)eclipse自带的wtwebapp 2) tomcat webapp

4.jar包没有导进入或者没有随项目发布:

1
严重: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener at org.Apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647) at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1493) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4115) at org.apache.catalina.core.StandardContext.start(StandardContext.java:4671) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) at org.apache.catalina.core.StandardHost.start(StandardHost.java:785) at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053) at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463) at org.apache.catalina.core.StandardService.start(StandardService.java:525) at org.apache.catalina.core.StandardServer.start(StandardServer.java:701) at org.apache.catalina.startup.Catalina.start(Catalina.java:585) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

解决方法:设置deployment assembly。add——>java build path entries——>maven dependencies —>finish.

以后出现404,可以去发布的目录下查看,是否存在项目,然后,

1.检查项目的包是否完整,比如缺少javax.servlet.http之类的(对于这种问题,直接引入包,而不是依赖于server)。

1
2
3
4
5
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>

2.检查是否项目目录下把那些包拷过去了。

以后碰到这种问题,第一反应就是跑到部署的目录下面去,看看它是否缺jar包,缺文件等等。再者就是看deploy assembly下面是否设置正确了。

maven install出现必须要idk 1.7之上才支持什么表达式,是因为ArrayList list=ArrayList<>(); <>这个表达式得1.7之上支持。

解决方法:在build里面加入

1
2
3
4
5
6
7
8
9
10
11
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>

附:

maven配置web项目:

http://www.jianshu.com/p/a92831ab2f92

https://my.oschina.net/u/2430057/blog/549029