这几天尝试使用Maven,普通Java项目确实可以正常打包运行,而同Java Web项目整合时,却遇到了java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener
报错,在stackoverflow上搜寻解决方案,无果,给出的办法并不适用。就这样谷歌了两个多小时,终于找到了一个正确的解决办法。
这是由于pom.xml中下载的jar包未被部署。我们先ctrl+shift+alt+s打开Project Structure窗口,选择Artifacts,选择要打包部署的项目,在Output Layout –> Web-INF查看是否有lib目录,如果右边Available Elements窗口还显示有jar包,说明这些jar包未添加,则应右击选择Put into Output Root,这样就OK啦~
这说明自己对intelliJ IDEA下jar包的部署并未完全理解,遇到这样的坑也好,下次长记性啦,啊哈哈哈。程序员不就是在一次次踩坑中成长起来的么?
参考
IntelliJ使用指南—— 深入理解IntelliJ的Web部署逻辑
IntelliJ使用指南—— 导入Eclipse的Web项目