622 lines
23 KiB
XML
622 lines
23 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">
|
||
|
||
|
||
<parent>
|
||
<artifactId>metersphere-server</artifactId>
|
||
<groupId>io.metersphere</groupId>
|
||
<version>${revision}</version>
|
||
</parent>
|
||
|
||
<modelVersion>4.0.0</modelVersion>
|
||
<artifactId>backend</artifactId>
|
||
|
||
<properties>
|
||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||
<java.version>11</java.version>
|
||
<skipAntRunForJenkins>false</skipAntRunForJenkins>
|
||
<!-- 第三方不包统一版本,如果不指定,Spring 会为我们选择匹配的版本 -->
|
||
<dubbo.version>2.7.15</dubbo.version>
|
||
<flyway.version>7.15.0</flyway.version>
|
||
<shiro.version>1.9.0</shiro.version>
|
||
<mssql-jdbc.version>7.4.1.jre8</mssql-jdbc.version>
|
||
<postgresql.version>42.3.2</postgresql.version>
|
||
<java-websocket.version>1.5.3</java-websocket.version>
|
||
</properties>
|
||
|
||
<dependencies>
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-web</artifactId>
|
||
<exclusions>
|
||
<exclusion>
|
||
<artifactId>spring-boot-starter-tomcat</artifactId>
|
||
<groupId>org.springframework.boot</groupId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-configuration-processor</artifactId>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter</artifactId>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-actuator</artifactId>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-test</artifactId>
|
||
<scope>test</scope>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-aop</artifactId>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-undertow</artifactId>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-mail</artifactId>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.springframework.kafka</groupId>
|
||
<artifactId>spring-kafka</artifactId>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.projectlombok</groupId>
|
||
<artifactId>lombok</artifactId>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.mybatis.spring.boot</groupId>
|
||
<artifactId>mybatis-spring-boot-starter</artifactId>
|
||
<version>2.2.2</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-websocket</artifactId>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-validation</artifactId>
|
||
</dependency>
|
||
|
||
<!-- flyway -->
|
||
<dependency>
|
||
<groupId>org.flywaydb</groupId>
|
||
<artifactId>flyway-core</artifactId>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>mysql</groupId>
|
||
<artifactId>mysql-connector-java</artifactId>
|
||
<scope>runtime</scope>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>com.github.pagehelper</groupId>
|
||
<artifactId>pagehelper</artifactId>
|
||
<version>5.3.0</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.apache.shiro</groupId>
|
||
<artifactId>shiro-spring-boot-starter</artifactId>
|
||
<version>${shiro.version}</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.redisson</groupId>
|
||
<artifactId>redisson-spring-boot-starter</artifactId>
|
||
<version>3.17.3</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.springframework.session</groupId>
|
||
<artifactId>spring-session-data-redis</artifactId>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.apache.commons</groupId>
|
||
<artifactId>commons-lang3</artifactId>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.apache.commons</groupId>
|
||
<artifactId>commons-text</artifactId>
|
||
<version>1.8</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>commons-codec</groupId>
|
||
<artifactId>commons-codec</artifactId>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>com.alibaba</groupId>
|
||
<artifactId>fastjson</artifactId>
|
||
<version>1.2.83</version>
|
||
</dependency>
|
||
|
||
<!-- openapi -->
|
||
<dependency>
|
||
<groupId>org.springdoc</groupId>
|
||
<artifactId>springdoc-openapi-ui</artifactId>
|
||
<version>1.6.3</version>
|
||
</dependency>
|
||
|
||
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-rsocket -->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-rsocket</artifactId>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>io.metersphere</groupId>
|
||
<artifactId>ms-jmeter-core</artifactId>
|
||
<version>1.2.1</version>
|
||
<exclusions>
|
||
<exclusion>
|
||
<artifactId>netty</artifactId>
|
||
<groupId>io.netty</groupId>
|
||
</exclusion>
|
||
<exclusion>
|
||
<artifactId>mail</artifactId>
|
||
<groupId>javax.mail</groupId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
|
||
<!-- 手动引入,不然会有 java.lang.NoClassDefFoundError: Could not initialize class org.apache.dubbo.config.ReferenceConfig -->
|
||
<dependency>
|
||
<groupId>org.apache.dubbo</groupId>
|
||
<artifactId>dubbo</artifactId>
|
||
<version>${dubbo.version}</version>
|
||
<exclusions>
|
||
<exclusion>
|
||
<artifactId>spring-context</artifactId>
|
||
<groupId>org.springframework</groupId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
<!-- jdk11 环境下有 Illegal reflective access -->
|
||
<dependency>
|
||
<groupId>com.google.inject</groupId>
|
||
<artifactId>guice</artifactId>
|
||
<version>5.1.0</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<artifactId>xz</artifactId>
|
||
<groupId>org.tukaani</groupId>
|
||
<version>1.9</version>
|
||
</dependency>
|
||
|
||
|
||
<!-- 排除jmeter中的 xstream 解决bug -->
|
||
<dependency>
|
||
<groupId>com.thoughtworks.xstream</groupId>
|
||
<artifactId>xstream</artifactId>
|
||
<version>1.4.19</version>
|
||
</dependency>
|
||
|
||
<!-- easyexcel -->
|
||
<dependency>
|
||
<groupId>com.alibaba</groupId>
|
||
<artifactId>easyexcel</artifactId>
|
||
<version>2.2.10</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.apache.xmlbeans</groupId>
|
||
<artifactId>xmlbeans</artifactId>
|
||
<version>3.0.0</version>
|
||
</dependency>
|
||
|
||
|
||
<dependency>
|
||
<groupId>com.fit2cloud</groupId>
|
||
<artifactId>quartz-spring-boot-starter</artifactId>
|
||
<version>0.0.9</version>
|
||
</dependency>
|
||
|
||
|
||
<!-- LDAP Module -->
|
||
<dependency>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-starter-data-ldap</artifactId>
|
||
</dependency>
|
||
|
||
<!-- swagger 解析 -->
|
||
<dependency>
|
||
<groupId>io.swagger.parser.v3</groupId>
|
||
<artifactId>swagger-parser</artifactId>
|
||
<version>2.0.24</version>
|
||
</dependency>
|
||
|
||
|
||
<!-- 执行 js 代码依赖 -->
|
||
<dependency>
|
||
<groupId>org.mozilla</groupId>
|
||
<artifactId>rhino-engine</artifactId>
|
||
<version>1.7.13</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.jsoup</groupId>
|
||
<artifactId>jsoup</artifactId>
|
||
<version>1.14.2</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>com.atlassian.commonmark</groupId>
|
||
<artifactId>commonmark</artifactId>
|
||
<version>0.15.2</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.apache.commons</groupId>
|
||
<artifactId>commons-compress</artifactId>
|
||
<version>1.21</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.dom4j</groupId>
|
||
<artifactId>dom4j</artifactId>
|
||
<version>2.1.3</version>
|
||
</dependency>
|
||
<!--xpath不加这个依赖会报错-->
|
||
<dependency>
|
||
<groupId>jaxen</groupId>
|
||
<artifactId>jaxen</artifactId>
|
||
<version>1.2.0</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>net.sourceforge.htmlcleaner</groupId>
|
||
<artifactId>htmlcleaner</artifactId>
|
||
<version>2.24</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.apache.httpcomponents</groupId>
|
||
<artifactId>httpclient</artifactId>
|
||
</dependency>
|
||
<!-- 反射工具包 -->
|
||
<dependency>
|
||
<groupId>org.reflections</groupId>
|
||
<artifactId>reflections</artifactId>
|
||
<version>0.10.2</version>
|
||
</dependency>
|
||
<!-- k8s client -->
|
||
<dependency>
|
||
<groupId>io.fabric8</groupId>
|
||
<artifactId>kubernetes-client</artifactId>
|
||
<version>4.13.2</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>org.java-websocket</groupId>
|
||
<artifactId>Java-WebSocket</artifactId>
|
||
<version>${java-websocket.version}</version>
|
||
</dependency>
|
||
<!-- xmind export-->
|
||
<dependency>
|
||
<groupId>com.github.eljah</groupId>
|
||
<artifactId>xmindjbehaveplugin</artifactId>
|
||
<version>0.8</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>org.codehaus.plexus</groupId>
|
||
<artifactId>plexus-utils</artifactId>
|
||
<version>3.0.24</version>
|
||
</dependency>
|
||
<!-- selenium包 -->
|
||
<dependency>
|
||
<groupId>org.seleniumhq.selenium</groupId>
|
||
<artifactId>selenium-java</artifactId>
|
||
</dependency>
|
||
<!-- 基础包 -->
|
||
<dependency>
|
||
<groupId>io.metersphere</groupId>
|
||
<artifactId>metersphere-plugin-core</artifactId>
|
||
<version>1.0.1</version>
|
||
<exclusions>
|
||
<exclusion>
|
||
<artifactId>log4j-slf4j-impl</artifactId>
|
||
<groupId>org.apache.logging.log4j</groupId>
|
||
</exclusion>
|
||
<exclusion>
|
||
<artifactId>ApacheJMeter_core</artifactId>
|
||
<groupId>org.apache.jmeter</groupId>
|
||
</exclusion>
|
||
</exclusions>
|
||
</dependency>
|
||
<!--随机数据生成API-->
|
||
<dependency>
|
||
<groupId>com.apifan.common</groupId>
|
||
<artifactId>common-random</artifactId>
|
||
<version>1.0.7</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>com.github.mifmif</groupId>
|
||
<artifactId>generex</artifactId>
|
||
<version>1.0.2</version>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<groupId>net.sf.json-lib</groupId>
|
||
<artifactId>json-lib</artifactId>
|
||
<version>2.4</version>
|
||
<classifier>jdk15</classifier>
|
||
</dependency>
|
||
|
||
<dependency>
|
||
<artifactId>guava</artifactId>
|
||
<groupId>com.google.guava</groupId>
|
||
<version>31.0.1-jre</version>
|
||
</dependency>
|
||
|
||
<!--java json schema json格式校验-->
|
||
<dependency>
|
||
<groupId>com.github.java-json-tools</groupId>
|
||
<artifactId>json-schema-validator</artifactId>
|
||
<version>2.2.14</version>
|
||
</dependency>
|
||
|
||
<!--解决升级JDK11后动态加载JAR 需要JVM的JCA签名信任才能作为加密提供者-->
|
||
<dependency>
|
||
<groupId>org.bouncycastle</groupId>
|
||
<artifactId>bcprov-jdk15on</artifactId>
|
||
<version>1.70</version>
|
||
</dependency>
|
||
</dependencies>
|
||
|
||
<build>
|
||
<resources>
|
||
<resource>
|
||
<directory>src/main/java</directory>
|
||
<includes>
|
||
<include>**/*.properties</include>
|
||
<include>**/*.xml</include>
|
||
<include>**/*.json</include>
|
||
<include>**/*.tpl</include>
|
||
<include>**/*.js</include>
|
||
</includes>
|
||
<filtering>false</filtering>
|
||
</resource>
|
||
<resource>
|
||
<directory>src/main/resources</directory>
|
||
<includes>
|
||
<include>**/*</include>
|
||
</includes>
|
||
<filtering>false</filtering>
|
||
</resource>
|
||
</resources>
|
||
<plugins>
|
||
|
||
<plugin>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||
<configuration>
|
||
<addResources>true</addResources>
|
||
<excludes>
|
||
<exclude>
|
||
<groupId>org.projectlombok</groupId>
|
||
<artifactId>lombok</artifactId>
|
||
</exclude>
|
||
<exclude>
|
||
<groupId>org.springframework.boot</groupId>
|
||
<artifactId>spring-boot-configuration-processor</artifactId>
|
||
</exclude>
|
||
</excludes>
|
||
</configuration>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-surefire-plugin</artifactId>
|
||
<version>2.12.4</version>
|
||
<configuration>
|
||
<skipTests>true</skipTests>
|
||
</configuration>
|
||
</plugin>
|
||
<plugin>
|
||
<artifactId>maven-clean-plugin</artifactId>
|
||
<configuration>
|
||
<filesets>
|
||
<fileset>
|
||
<directory>src/main/resources/static</directory>
|
||
<includes>
|
||
<include>**</include>
|
||
</includes>
|
||
<followSymlinks>false</followSymlinks>
|
||
</fileset>
|
||
<fileset>
|
||
<directory>src/main/resources/public</directory>
|
||
<includes>
|
||
<include>**</include>
|
||
</includes>
|
||
<followSymlinks>false</followSymlinks>
|
||
</fileset>
|
||
</filesets>
|
||
</configuration>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-compiler-plugin</artifactId>
|
||
<configuration>
|
||
<release>11</release>
|
||
</configuration>
|
||
</plugin>
|
||
|
||
<!-- Overlay guacamole-common-js (zip) -->
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-war-plugin</artifactId>
|
||
<version>2.6</version>
|
||
</plugin>
|
||
|
||
<!-- 本地开发需要,ci打包时不执行这个插件 -->
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-antrun-plugin</artifactId>
|
||
<executions>
|
||
<execution>
|
||
<id>main-class-placement</id>
|
||
<phase>generate-resources</phase>
|
||
<configuration>
|
||
<skip>${skipAntRunForJenkins}</skip>
|
||
<target>
|
||
<copy todir="src/main/resources/static">
|
||
<fileset dir="../frontend/dist">
|
||
<exclude name="*.html"/>
|
||
</fileset>
|
||
</copy>
|
||
<copy todir="src/main/resources/public">
|
||
<fileset dir="../frontend/dist">
|
||
<include name="*.html"/>
|
||
</fileset>
|
||
</copy>
|
||
<copy todir="src/main/resources/static/css">
|
||
<fileset dir="../frontend/src/assets/theme">
|
||
<include name="index.css"/>
|
||
</fileset>
|
||
</copy>
|
||
</target>
|
||
</configuration>
|
||
<goals>
|
||
<goal>run</goal>
|
||
</goals>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-dependency-plugin</artifactId>
|
||
<executions>
|
||
<execution>
|
||
<id>copy</id>
|
||
<phase>generate-resources</phase>
|
||
<goals>
|
||
<goal>copy</goal>
|
||
</goals>
|
||
</execution>
|
||
</executions>
|
||
<configuration>
|
||
<artifactItems>
|
||
<artifactItem>
|
||
<groupId>org.apache.jmeter</groupId>
|
||
<artifactId>ApacheJMeter_functions</artifactId>
|
||
<version>5.4.3</version>
|
||
<type>jar</type>
|
||
<overWrite>true</overWrite>
|
||
<outputDirectory>src/main/resources/jmeter/lib/ext</outputDirectory>
|
||
<destFileName>ApacheJMeter_functions.jar</destFileName>
|
||
</artifactItem>
|
||
<artifactItem>
|
||
<groupId>io.metersphere</groupId>
|
||
<artifactId>metersphere-jmeter-functions</artifactId>
|
||
<version>1.4</version>
|
||
<type>jar</type>
|
||
<overWrite>true</overWrite>
|
||
<outputDirectory>src/main/resources/jmeter/lib/ext</outputDirectory>
|
||
<destFileName>metersphere-jmeter-functions.jar</destFileName>
|
||
</artifactItem>
|
||
<artifactItem>
|
||
<groupId>org.python</groupId>
|
||
<artifactId>jython-standalone</artifactId>
|
||
<version>2.7.2</version>
|
||
<type>jar</type>
|
||
<overWrite>true</overWrite>
|
||
<outputDirectory>src/main/resources/jmeter/lib/ext</outputDirectory>
|
||
<destFileName>jython-standalone.jar</destFileName>
|
||
</artifactItem>
|
||
</artifactItems>
|
||
<outputDirectory>${project.build.directory}/wars</outputDirectory>
|
||
<overWriteReleases>false</overWriteReleases>
|
||
<overWriteSnapshots>true</overWriteSnapshots>
|
||
</configuration>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.mybatis.generator</groupId>
|
||
<artifactId>mybatis-generator-maven-plugin</artifactId>
|
||
<version>1.3.7</version>
|
||
<configuration>
|
||
<verbose>true</verbose>
|
||
<overwrite>true</overwrite>
|
||
</configuration>
|
||
<dependencies>
|
||
<dependency>
|
||
<groupId>mysql</groupId>
|
||
<artifactId>mysql-connector-java</artifactId>
|
||
<version>8.0.16</version>
|
||
</dependency>
|
||
<dependency>
|
||
<groupId>com.itfsw</groupId>
|
||
<artifactId>mybatis-generator-plugin</artifactId>
|
||
<version>1.3.8</version>
|
||
</dependency>
|
||
</dependencies>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.apache.maven.plugins</groupId>
|
||
<artifactId>maven-resources-plugin</artifactId>
|
||
<executions>
|
||
<execution>
|
||
<id>copy-and-filter-allatori-config</id>
|
||
<phase>package</phase>
|
||
<goals>
|
||
<goal>copy-resources</goal>
|
||
</goals>
|
||
<configuration>
|
||
<outputDirectory>${basedir}/target</outputDirectory>
|
||
<resources>
|
||
<resource>
|
||
<directory>${basedir}/allatori</directory>
|
||
<includes>
|
||
<include>allatori.xml</include>
|
||
</includes>
|
||
<filtering>true</filtering>
|
||
</resource>
|
||
</resources>
|
||
</configuration>
|
||
</execution>
|
||
</executions>
|
||
</plugin>
|
||
<plugin>
|
||
<groupId>org.codehaus.mojo</groupId>
|
||
<artifactId>exec-maven-plugin</artifactId>
|
||
<executions>
|
||
<execution>
|
||
<id>run-allatori</id>
|
||
<phase>package</phase>
|
||
<goals>
|
||
<goal>exec</goal>
|
||
</goals>
|
||
</execution>
|
||
</executions>
|
||
<configuration>
|
||
<executable>java</executable>
|
||
<arguments>
|
||
<argument>-Xms128m</argument>
|
||
<argument>-Xmx512m</argument>
|
||
<argument>-jar</argument>
|
||
<argument>${basedir}/target/classes/allatori/allatori.jar</argument>
|
||
<argument>${basedir}/target/classes/allatori/allatori.xml</argument>
|
||
</arguments>
|
||
</configuration>
|
||
</plugin>
|
||
</plugins>
|
||
</build>
|
||
|
||
</project>
|