前言
由于以前都是在myeclipse上新建web project,今天下载了个eclipse for java ee(版本最好是用3.6以上的,它有deployment assembly功能直接加lib包,以前的版本需要改配置文件,网上有配置),然后装maven插件,现在都用这个工具,我准备希望试试。
正文
症状:
tomcat在eclipse里面能正常启动,而在浏览器中访问http://localhost:8080/不能访问,且报404错误。同时其他项目页面也不能访问。
关闭eclipse里面的tomcat,在tomcat安装目录下双击startup.bat手动启动tomcat服务器。访问htt://localhost:8080/能正常访问tomcat管理页面。
症状原因:
eclipse将tomcat的项目发布目录(tomcat 目录中的webapp)重定向了,所以你会发现在tomcat安装目录下的webapp目录里面找不到你的项目文件。
解决办法:
重新配置下tomcat服务器:
在eclipse中的server页面,双击tomcat服务,会看到如图所示的配置页面:
可以看到红圈中选择的是 Use workspace metadata(does not modify Tomcat installion)
如果该tomcat中部署了项目的话,这红圈中的选项会灰掉不能修改,要修改必须得先把tomcat中的部署的服务都移除。
如图:
通过右键单击tomcat服务器选择 Add and Remove,在弹出的对话框中移除已部署的项目。移除完确定后,将看到上面的选项面板部分可编辑了。
选择Use tomcat installation(Task control of Tomcat installation) 即选择tomcat的安装目录来作为项目的发布目录。
然后,下来四行,看到"Deploy Path"了没?它后面的值默认是"wtpwebapps",把它改成"webapps",也就是 tomcat
重启tomcat服务器,访问http://localhost:8080则能正常访问了,自己部署的项目也能正常访问了。
------------------------------------------------------------------------------------
转载:http://blog.csdn.net/wqjsir/article/details/7169838
修改配置之后发现tomcat的webapps目录下的项目没有lib包,于是在项目上点击右键的properties--deployment assembly功能,发现包结构没有添加lib包,点击"Add",如下图:
选择"Java Build Path Entried",增加相应的lib包,再次启动tomcat发现如下错误
java.lang.NoClassDefFoundError: org/aspectj/weaver/BCException
由于我是自己手动新建的struts2,hibernate3.6和spring3.1,都只是引用了发布包里的相关jar,但是spring3.1不再把那些依赖的第三方jar包打包进来。
经过多次摸索,除了引入spring框架dist目录下的org.springframework.aop-3.1.1.RELEASE.jar之外,
还需要自己下载第三方依赖包:
aspectjrt.jar(http://www.java2s.com/Code/Jar/a/Downloadaspectjrtjar.htm)
aspectjweaver.jar(http://www.java2s.com/Code/Jar/a/Downloadaspectjweaverjar.htm)
以及aopalliance.jar(最新发布版是1.0,http://sourceforge.net/projects/aopalliance/有下载http://mirrors.ibiblio.org/maven2/aopalliance/aopalliance/1.0/)
引入以上jar包之后,就可以通过@Aspect等注解方式进行AOP编程了,同样的在项目上点击右键的properties--deployment assembly功能,发现包结构没有添加lib包;