Cas 使用maven的overlay搭建开发环境 (二)
关于cas-server的安装、部署网上教程很多。但是使用Cas,只通过部署时修改配置是无法满足产品需求的,因此需要我们改造Cas。本文讲解如何使用maven的overlay无侵入的改造Cas。
什么是maven的overlay?
overlay可以把多个项目war合并成为一个项目,并且如果项目存在同名文件,那么主项目中的文件将覆盖掉其他项目的同名文件。
maven overlay 官方地址: http://maven.apache.org/plugins/maven-war-plugin/overlays.html
第一步:新建maven项目cas-server-overlays-demo
pom中设置properties,cas使用4.2.7
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.version>1.8</java.version> <cas.version>4.2.7</cas.version> </properties>
第二步:引入cas提供的cas-server-webapp主项目,作为cas-server-overlays-demo的从项目
<dependency> <groupId>org.jasig.cas</groupId> <artifactId>cas-server-webapp</artifactId> <version>${cas.version}</version> <type>war</type> <scope>runtime</scope> </dependency>
第三步:配置maven overlay
配置overlay用于覆盖从属项目的同名文件,意思就是说,如果我主项目中存在与cas-server-webapp项目相同目录并且相同名称的文件,已主项目的为准,也就是覆盖从属项目的文件。
在cas-server-overlays-demo的pom.xml中添加:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <failOnMissingWebXml>false</failOnMissingWebXml> <warName>cas</warName> <overlays> <overlay> <groupId>org.jasig.cas</groupId> <artifactId>cas-server-webapp</artifactId> </overlay> </overlays> </configuration> </plugin>
第四步:修改pom.xml中fileName
<finalName>cas</finalName>
第五步:删除新建cas-server-overlays-demo项目时自动生成的index.jsp和web.xml,以免maven编译后覆盖掉cas的同名文件
最后执行mvn clean install,
编译后的结构如下:
启动tomcat后的访问效果和部署cas.war的访问效果一样:
项目地址:https://github.com/hibryanx/cas-server-overlays-demo
版权声明:本文为博主原创文章,转载需注明出处。http://www.cnblogs.com/bryanx/p/8595434.html
推荐阅读
-
使用maven+eclipse搭建struts2开发环境
-
使用eclipse搭建c/c++开发环境的详解步骤
-
Python开发虚拟环境使用virtualenvwrapper的搭建步骤教程图解
-
使用Docker快速搭建Oracle开发环境的方法教程
-
使用vue-cli+webpack搭建vue开发环境的方法
-
使用 Visual Studio Code(VSCode)搭建简单的Python+Django开发环境的方法步骤
-
使用VScode搭建ROS开发环境的教程详解
-
使用webpack搭建react开发环境的方法
-
VirtualBox linux开发虚拟环境搭建踩坑(三)eclpse的使用
-
使用vagrant一键部署本地php开发环境(二)制作自己的vagrant box