<?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>com.alibaba.csp</groupId> <artifactId>sentinel-parent</artifactId> <version>1.8.1-SNAPSHOT</version> <packaging>pom</packaging> <name>${project.artifactId}</name> <description>The parent project of Sentinel</description> <url>https://github.com/alibaba/Sentinel</url> <licenses> <license> <name>Apache License, Version 2.0</name> <url>http://www.apache.org/licenses/LICENSE-2.0</url> <distribution>repo</distribution> </license> </licenses> <scm> <url>https://github.com/alibaba/Sentinel</url> <connection>scm:git:https://github.com/alibaba/Sentinel.git</connection> <developerConnection>scm:git:https://github.com/alibaba/Sentinel.git</developerConnection> </scm> <developers> <developer> <name>The Sentinel Project Contributors</name> <email>sentinel-dev@linux.alibaba.com</email> <url>https://github.com/alibaba/Sentinel</url> </developer> </developers> <organization> <name>Alibaba Group</name> <url>https://github.com/alibaba</url> </organization> <issueManagement> <system>github</system> <url>https://github.com/alibaba/Sentinel/issues</url> </issueManagement> <properties> <!-- Compile libs --> <fastjson.version>1.2.71</fastjson.version> <javax.annotation-api.version>1.3.2</javax.annotation-api.version> <!-- Test libs --> <junit.version>4.12</junit.version> <mockito.version>2.28.2</mockito.version> <assertj.version>3.12.1</assertj.version> <awaitility.version>3.1.5</awaitility.version> <powermock.version>2.0.0</powermock.version> <!-- Build --> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <java.source.version>1.7</java.source.version> <java.target.version>1.7</java.target.version> <java.encoding>UTF-8</java.encoding> <maven.compiler.version>3.8.0</maven.compiler.version> <maven.surefire.version>2.22.1</maven.surefire.version> <maven.source.version>3.0.1</maven.source.version> <maven.javadoc.version>3.0.1</maven.javadoc.version> <maven.deploy.version>2.8.2</maven.deploy.version> <maven.gpg.version>1.6</maven.gpg.version> <maven.jacoco.version>0.8.3</maven.jacoco.version> <maven.jar.version>3.1.0</maven.jar.version> <maven.pmd.version>3.8</maven.pmd.version> </properties> <modules> <module>sentinel-core</module> <module>sentinel-extension</module> <module>sentinel-transport</module> <module>sentinel-adapter</module> <module>sentinel-cluster</module> <module>sentinel-logging</module> <module>sentinel-dashboard</module> <module>sentinel-demo</module> <module>sentinel-benchmark</module> </modules> <dependencyManagement> <dependencies> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-core</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-extension</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-annotation-aspectj</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-annotation-cdi-interceptor</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-parameter-flow-control</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-datasource-extension</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-datasource-nacos</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-datasource-zookeeper</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-datasource-apollo</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-datasource-etcd</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-transport-simple-http</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-transport-netty-http</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-transport-common</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-cluster-common-default</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba.csp</groupId> <artifactId>sentinel-adapter</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>${fastjson.version}</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>${mockito.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <version>${assertj.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.awaitility</groupId> <artifactId>awaitility</artifactId> <version>${awaitility.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.hamcrest</groupId> <artifactId>java-hamcrest</artifactId> <version>2.0.0.0</version> <scope>test</scope> </dependency> <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-module-junit4</artifactId> <version>${powermock.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.powermock</groupId> <artifactId>powermock-api-mockito2</artifactId> <version>${powermock.version}</version> <scope>test</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-pmd-plugin</artifactId> <version>${maven.pmd.version}</version> <configuration> <sourceEncoding>${project.build.sourceEncoding}</sourceEncoding> <minimumPriority>1</minimumPriority> <excludeRoots> <excludeRoot>com/alibaba/csp/sentinel/benchmark</excludeRoot> </excludeRoots> <excludes> <exclude>**/*_jmhTest.java</exclude> </excludes> <printFailingErrors>true</printFailingErrors> <rulesets> <ruleset>rulesets/java/ali-comment.xml</ruleset> <ruleset>rulesets/java/ali-concurrent.xml</ruleset> <ruleset>rulesets/java/ali-constant.xml</ruleset> <ruleset>rulesets/java/ali-exception.xml</ruleset> <ruleset>rulesets/java/ali-flowcontrol.xml</ruleset> <ruleset>rulesets/java/ali-naming.xml</ruleset> <ruleset>rulesets/java/ali-oop.xml</ruleset> <ruleset>rulesets/java/ali-orm.xml</ruleset> <ruleset>rulesets/java/ali-other.xml</ruleset> <ruleset>rulesets/java/ali-set.xml</ruleset> </rulesets> </configuration> <executions> <execution> <phase>verify</phase> <goals> <goal>check</goal> </goals> </execution> </executions> <dependencies> <dependency> <groupId>com.alibaba.p3c</groupId> <artifactId>p3c-pmd</artifactId> <version>1.3.6</version> </dependency> </dependencies> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${maven.compiler.version}</version> <configuration> <source>${java.source.version}</source> <target>${java.target.version}</target> <encoding>${java.encoding}</encoding> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <!-- CircleCI build workaround --> <argLine>@{argLine} -Xms1024m -Xmx2048m</argLine> <argLine>-Dfile.encoding=UTF-8</argLine> <useSystemClassLoader>false</useSystemClassLoader> </configuration> </plugin> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>${maven.jacoco.version}</version> <executions> <execution> <goals> <goal>prepare-agent</goal> </goals> </execution> <execution> <id>report</id> <phase>test</phase> <goals> <goal>report</goal> </goals> </execution> </executions> </plugin> </plugins> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>${maven.surefire.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>${maven.jar.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-gpg-plugin</artifactId> <version>${maven.gpg.version}</version> </plugin> </plugins> </pluginManagement> </build> <profiles> <profile> <id>oss</id> <build> <plugins> <!-- Source --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>${maven.source.version}</version> <executions> <execution> <phase>package</phase> <goals> <goal>jar-no-fork</goal> </goals> </execution> </executions> </plugin> <!-- Javadoc --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>${maven.javadoc.version}</version> <executions> <execution> <phase>package</phase> <goals> <goal>jar</goal> </goals> <configuration> <locale>en_US</locale> <encoding>UTF-8</encoding> <charset>UTF-8</charset> <doclint>none</doclint> </configuration> </execution> </executions> </plugin> <!-- GPG --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-gpg-plugin</artifactId> <version>${maven.gpg.version}</version> <executions> <execution> <phase>verify</phase> <goals> <goal>sign</goal> </goals> </execution> </executions> </plugin> </plugins> </build> <distributionManagement> <snapshotRepository> <id>oss</id> <url>https://oss.sonatype.org/content/repositories/snapshots/</url> </snapshotRepository> <repository> <id>oss</id> <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url> </repository> </distributionManagement> </profile> </profiles> </project>