Intellij8中Maven打包时jsp和servlet组件冲突解决办法
来源:互联网 发布:人机界面触摸屏编程 编辑:程序博客网 时间:2024/05/29 18:35
最近在改别人的一个模块程序时,是用Intellij Idea8做的,项目是用Maven来管理的,Web模块引用到了jsp-api.jar和servlet-api.jar,结果在用Maven打包时,war文件中直接包装了这两个文件,而这两个文件和Tomcat本身的文件有冲突,导致了应用程序不能加载。
本来自己对Idea也不熟悉,对Maven也不懂,搞了好久,始终没有解决,只能先生成,然后再删除这两个文件。因为如果不用Maven生成,直接用Idea的Build生成,那么其中的资源文件又是乱码,界面上全是蚂蚁在爬,心里麻得乱七八糟。
找了好多资料,终于在这里找到了需要的说明:
http://macrochen.javaeye.com/blog/246170
http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html
http://www.360doc.com/content/07/0727/14/27908_636504.shtml
原来可以在pom文件中配置时加个<scope>参数,使用provided就可以期望应用服务器将提供这个支持,如,我需要jsp-api和servlet-api支持,则我可以配置为:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
<scope>provided</scope> <!--这里说明jsp-api.jar文件将由应用服务器提供,打包时不需要包含-->
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.1.2</version> <!--这里没有指定scope参数,说明默认是compile,则打包时将包含-->
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<scope>provided</scope> <!--打包时不包含-->
</dependency>
原理性的东西我不再罗嗦了,其实我也不太懂,所以先当快餐用吧。顺便记下来,免得以后久了不用又忘了。
- Intellij8中Maven打包时jsp和servlet组件冲突解决办法
- session在JSP和Servlet中不一致解决办法
- 解决项目中jsp-api,servlet-api和tomcat中jar包冲突问题
- maven打包war,报servlet.jsp不存在解答
- maven打包报程序包javax.servlet.jsp.tagext不存在
- servlet包冲突解决办法
- 解决maven中servlet-api.jar和容器自带的servlet-api.jar的依赖冲突
- maven中添加servlet、jsp依赖
- Maven导入Servlet和JSP jar包
- 解决项目中jsp-api.jar和servlet-api.jar与Tomcat服务器中jsp-api.jar和servlet-api.jar的冲突问题
- 关于程序中使用servlet-api.jar和jsp-api.jar与服务器lib包jar包冲突的问题
- Maven jar包冲突解决办法
- maven jar包冲突解决办法
- 在jsp/servlet中使用apache FileUpload组件文件上传(jsp,servlet,fileupload)
- jsp、servlet配置与打包
- maven依赖servlet-api和jsp-api的问题
- maven依赖servlet-api和jsp-api的问题
- JSP和Servlet中跳转详解
- WindowsMediaPlayer控件一些用法(中文)
- 破除计算机启动密码
- 自动设置环境变量
- Ext.form.comboBox中的内容下tip提示
- jsp页面导出excel 并且可以弹出保存对话框
- Intellij8中Maven打包时jsp和servlet组件冲突解决办法
- GCC-3.4.6源代码学习笔记(38)
- flex event实例
- Studying note of GCC-3.4.6 source (38)
- 点击弹出一个层
- 书讯:《自动化软件测试实施指南》
- [转]让程序员增添一些浪漫情怀的代码
- 歌词文件lrc的解析类(目前在WINCE下使用)
- Caused by: java.sql.SQLException: Field 'id' doesn't have a default value