375 lines
16 KiB
XML
375 lines
16 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd ">
|
||
<modelVersion>4.0.0</modelVersion>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-overlay</artifactId>
|
||
<packaging>war</packaging>
|
||
<version>1.0</version>
|
||
|
||
<properties>
|
||
<cas.version>5.3.16</cas.version>
|
||
<springboot.version>1.5.18.RELEASE</springboot.version>
|
||
<app.server>-tomcat</app.server>
|
||
<mainClassName>org.springframework.boot.loader.WarLauncher</mainClassName>
|
||
<isExecutable>false</isExecutable>
|
||
<manifestFileToUse>${project.build.directory}/war/work/org.apereo.cas/cas-server-webapp${app.server}/META-INF/MANIFEST.MF</manifestFileToUse>
|
||
<maven.compiler.source>1.8</maven.compiler.source>
|
||
<maven.compiler.target>1.8</maven.compiler.target>
|
||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||
<!-- 覆盖 spring-boot-dependencies 默认的 thymeleaf 2.1.6,与 CAS 5.3.16 自带的 3.0.11 对齐,避免双版本冲突 -->
|
||
<thymeleaf.version>3.0.11.RELEASE</thymeleaf.version>
|
||
<thymeleaf-spring4.version>3.0.11.RELEASE</thymeleaf-spring4.version>
|
||
<!-- 覆盖 spring-boot-dependencies 默认版本,与 CAS 5.3.16 webapp 自带版本对齐,消除双版本冲突 -->
|
||
<spring.version>4.3.25.RELEASE</spring.version>
|
||
<jackson.version>2.9.9</jackson.version>
|
||
<tomcat.version>8.5.47</tomcat.version>
|
||
<log4j2.version>2.12.1</log4j2.version>
|
||
<hikari.version>3.2.0</hikari.version>
|
||
<spring-security.version>4.2.10.RELEASE</spring-security.version>
|
||
<caffeine.version>2.6.2</caffeine.version>
|
||
<commons-codec.version>1.11</commons-codec.version>
|
||
<metrics.version>3.2.5</metrics.version>
|
||
</properties>
|
||
|
||
<!-- ===== 新增 Dependency Management ===== -->
|
||
<dependencyManagement>
|
||
<dependencies>
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-dependencies</artifactId>
|
||
<version>${springboot.version}</version>
|
||
<type>pom</type>
|
||
<scope>import</scope>
|
||
<exclusions>
|
||
<exclusion>
|
||
<groupId>ch.qos.logback</groupId>
|
||
<artifactId>logback-classic</artifactId>
|
||
</exclusion>
|
||
<exclusion>
|
||
<groupId>ch.qos.logback</groupId>
|
||
<artifactId>logback-core</artifactId>
|
||
</exclusion>
|
||
<exclusion>
|
||
<groupId>org.apache.logging.log4j</groupId>
|
||
<artifactId>log4j-slf4j-impl</artifactId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
</dependencies>
|
||
</dependencyManagement>
|
||
|
||
<build>
|
||
<plugins>
|
||
<plugin>
|
||
<groupId>com.rimerosolutions.maven.plugins</groupId>
|
||
<artifactId>wrapper-maven-plugin</artifactId>
|
||
<version>0.0.5</version>
|
||
<configuration>
|
||
<verifyDownload>true</verifyDownload>
|
||
<checksumAlgorithm>MD5</checksumAlgorithm>
|
||
</configuration>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||
<version>${springboot.version}</version>
|
||
<configuration>
|
||
<mainClass>${mainClassName}</mainClass>
|
||
<addResources>true</addResources>
|
||
<executable>${isExecutable}</executable>
|
||
<layout>WAR</layout>
|
||
</configuration>
|
||
<executions>
|
||
<execution>
|
||
<goals>
|
||
<goal>repackage</goal>
|
||
</goals>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-war-plugin</artifactId>
|
||
<version>2.6</version>
|
||
<configuration>
|
||
<warName>cas</warName>
|
||
<failOnMissingWebXml>false</failOnMissingWebXml>
|
||
<recompressZippedFiles>false</recompressZippedFiles>
|
||
<archive>
|
||
<compress>false</compress>
|
||
<manifestFile>${manifestFileToUse}</manifestFile>
|
||
</archive>
|
||
<overlays>
|
||
<overlay>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-webapp${app.server}</artifactId>
|
||
</overlay>
|
||
</overlays>
|
||
</configuration>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-compiler-plugin</artifactId>
|
||
<version>3.3</version>
|
||
</plugin>
|
||
</plugins>
|
||
<finalName>cas</finalName>
|
||
</build>
|
||
|
||
<repositories>
|
||
<repository>
|
||
<id>sonatype-releases</id>
|
||
<url>http://oss.sonatype.org/content/repositories/releases/</url>
|
||
<snapshots>
|
||
<enabled>false</enabled>
|
||
</snapshots>
|
||
<releases>
|
||
<enabled>true</enabled>
|
||
</releases>
|
||
</repository>
|
||
<repository>
|
||
<id>sonatype-snapshots</id>
|
||
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
|
||
<snapshots>
|
||
<enabled>true</enabled>
|
||
</snapshots>
|
||
<releases>
|
||
<enabled>false</enabled>
|
||
</releases>
|
||
</repository>
|
||
<repository>
|
||
<id>shibboleth-releases</id>
|
||
<url>https://build.shibboleth.net/nexus/content/repositories/releases</url>
|
||
</repository>
|
||
</repositories>
|
||
|
||
<profiles>
|
||
<profile>
|
||
<activation>
|
||
<activeByDefault>true</activeByDefault>
|
||
</activation>
|
||
<id>default</id>
|
||
<dependencies>
|
||
|
||
<!-- CAS Web 应用 -->
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-webapp${app.server}</artifactId>
|
||
<version>${cas.version}</version>
|
||
<type>war</type>
|
||
<scope>runtime</scope>
|
||
<exclusions>
|
||
<exclusion>
|
||
<groupId>ch.qos.logback</groupId>
|
||
<artifactId>logback-classic</artifactId>
|
||
</exclusion>
|
||
<exclusion>
|
||
<groupId>ch.qos.logback</groupId>
|
||
<artifactId>logback-core</artifactId>
|
||
</exclusion>
|
||
<exclusion>
|
||
<groupId>org.apache.logging.log4j</groupId>
|
||
<artifactId>log4j-slf4j-impl</artifactId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
|
||
<!-- CAS 核心 API -->
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-core-api-authentication</artifactId>
|
||
<version>${cas.version}</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-core-authentication-api</artifactId>
|
||
<version>${cas.version}</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-core-configuration-api</artifactId>
|
||
<version>${cas.version}</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-core-api-ticket</artifactId>
|
||
<version>${cas.version}</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-core-configuration</artifactId>
|
||
<version>${cas.version}</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
|
||
<!-- SSO 会话所需:CentralAuthenticationService 等核心 API -->
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-core-api</artifactId>
|
||
<version>${cas.version}</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
|
||
<!-- SSO 会话所需:CookieRetrievingCookieGenerator / TGCCookieRetrievingCookieGenerator -->
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-core-cookie-api</artifactId>
|
||
<version>${cas.version}</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
|
||
<!-- SSO 会话所需:WebApplicationServiceFactory(构造 Service 以签发 ST) -->
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-core-services-authentication</artifactId>
|
||
<version>${cas.version}</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
|
||
|
||
|
||
<!-- Spring Boot Web -->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-web</artifactId>
|
||
<scope>provided</scope>
|
||
<exclusions>
|
||
<exclusion>
|
||
<groupId>ch.qos.logback</groupId>
|
||
<artifactId>logback-classic</artifactId>
|
||
</exclusion>
|
||
<exclusion>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-logging</artifactId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
|
||
<!-- Log4j2 -->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-log4j2</artifactId>
|
||
<version>${springboot.version}</version>
|
||
</dependency>
|
||
|
||
<!-- Redis -->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-data-redis</artifactId>
|
||
<scope>provided</scope>
|
||
<exclusions>
|
||
<exclusion>
|
||
<groupId>ch.qos.logback</groupId>
|
||
<artifactId>logback-classic</artifactId>
|
||
</exclusion>
|
||
<exclusion>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-logging</artifactId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
|
||
<!-- 验证码 -->
|
||
<dependency>
|
||
<groupId>com.github.penggle</groupId>
|
||
<artifactId>kaptcha</artifactId>
|
||
<version>2.3.2</version>
|
||
</dependency>
|
||
|
||
<!-- RSA -->
|
||
<dependency>
|
||
<groupId>org.bouncycastle</groupId>
|
||
<artifactId>bcprov-jdk15on</artifactId>
|
||
<version>1.68</version>
|
||
</dependency>
|
||
|
||
<!-- Fastjson -->
|
||
<dependency>
|
||
<groupId>com.alibaba</groupId>
|
||
<artifactId>fastjson</artifactId>
|
||
<version>1.2.83</version>
|
||
</dependency>
|
||
|
||
<!-- ===== JDBC + MySQL ===== -->
|
||
<!-- JDBC 支持(排除 HikariCP) -->
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-support-jdbc</artifactId>
|
||
<version>${cas.version}</version>
|
||
<exclusions>
|
||
<exclusion>
|
||
<groupId>com.zaxxer</groupId>
|
||
<artifactId>HikariCP</artifactId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.apereo.cas</groupId>
|
||
<artifactId>cas-server-support-jdbc-drivers</artifactId>
|
||
<version>${cas.version}</version>
|
||
<exclusions>
|
||
<exclusion>
|
||
<groupId>com.zaxxer</groupId>
|
||
<artifactId>HikariCP</artifactId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
|
||
<!-- 正确版本的 HikariCP(与 webapp 自带 3.2.0 对齐) -->
|
||
<dependency>
|
||
<groupId>com.zaxxer</groupId>
|
||
<artifactId>HikariCP</artifactId>
|
||
<version>3.2.0</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
|
||
<!-- MySQL 驱动 -->
|
||
<dependency>
|
||
<groupId>mysql</groupId>
|
||
<artifactId>mysql-connector-java</artifactId>
|
||
<version>5.1.46</version>
|
||
</dependency>
|
||
|
||
<!-- Spring Security Config(提供 WebSecurityConfigurerAdapter、HttpSecurity 等;webapp 不自带,必须打包进 WAR) -->
|
||
<dependency>
|
||
<groupId>org.springframework.security</groupId>
|
||
<artifactId>spring-security-config</artifactId>
|
||
</dependency>
|
||
|
||
<!-- Spring Security Web(提供 WebSecurity 等;webapp 不自带,必须打包进 WAR) -->
|
||
<dependency>
|
||
<groupId>org.springframework.security</groupId>
|
||
<artifactId>spring-security-web</artifactId>
|
||
</dependency>
|
||
|
||
<!-- Spring Security Crypto(BCrypt) -->
|
||
<dependency>
|
||
<groupId>org.springframework.security</groupId>
|
||
<artifactId>spring-security-crypto</artifactId>
|
||
<version>4.2.10.RELEASE</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
|
||
<!-- SnakeYAML:解析 Nacos 下发的 YAML 配置(webapp 已自带 1.17,provided 仅用于编译期,运行期复用 webapp 版本避免冲突) -->
|
||
<dependency>
|
||
<groupId>org.yaml</groupId>
|
||
<artifactId>snakeyaml</artifactId>
|
||
<version>1.17</version>
|
||
<scope>provided</scope>
|
||
</dependency>
|
||
</dependencies>
|
||
</profile>
|
||
</profiles>
|
||
</project>
|