<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.alibaba.nacos</groupId>
	<artifactId>nacos-all</artifactId>
	<version>2.5.1</version>
	<packaging>pom</packaging>
	<name>Alibaba NACOS 2.5.1</name>
	<description>Top Nacos project pom.xml file</description>
	<url>https://nacos.io</url>
	<inceptionYear>2018</inceptionYear>
	<organization>
		<name>Alibaba Group</name>
		<url>https://github.com/alibaba</url>
	</organization>
	<licenses>
		<license>
			<name>Apache License, Version 2.0</name>
			<url>http://www.apache.org/licenses/LICENSE-2.0</url>
			<distribution>repo</distribution>
		</license>
	</licenses>
	<developers>
		<developer>
			<id>Alibaba Nacos</id>
			<name>Nacos</name>
			<email>nacos_dev@linux.alibaba.com</email>
			<url>https://nacos.io</url>
		</developer>
	</developers>
	<mailingLists>
		<mailingList>
			<name>Development List</name>
			<subscribe>dev-nacos+subscribe@googlegroups.com</subscribe>
			<unsubscribe>dev-nacos+unsubscribe@googlegroups.com</unsubscribe>
			<post>dev-nacos@googlegroups.com</post>
		</mailingList>
		<mailingList>
			<name>User List</name>
			<subscribe>users-nacos+subscribe@googlegroups.com</subscribe>
			<unsubscribe>users-nacos+unsubscribe@googlegroups.com</unsubscribe>
			<post>users-nacos@googlegroups.com</post>
		</mailingList>
		<mailingList>
			<name>Commits List</name>
			<subscribe>commits-nacos+subscribe@googlegroups.com</subscribe>
			<unsubscribe>commits-nacos+unsubscribe@googlegroups.com</unsubscribe>
			<post>commits-nacos@googlegroups.com</post>
		</mailingList>
	</mailingLists>
	<prerequisites>
		<maven>3.2.5</maven>
	</prerequisites>
	<scm>
		<connection>scm:git@github.com:alibaba/nacos.git</connection>
		<developerConnection>scm:git@github.com:alibaba/nacos.git</developerConnection>
		<tag>nacos-all-${revision}</tag>
		<url>git@github.com:alibaba/nacos.git</url>
	</scm>
	<issueManagement>
		<system>github</system>
		<url>https://github.com/alibaba/nacos/issues</url>
	</issueManagement>
	<distributionManagement>
		<repository>
			<id>sona</id>
			<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
		</repository>
		<snapshotRepository>
			<id>sona</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
		</snapshotRepository>
	</distributionManagement>
	<properties>
		<HikariCP.version>3.4.2</HikariCP.version>
		<SnakeYaml.version>2.0</SnakeYaml.version>
		<apache-rat-plugin.version>0.12</apache-rat-plugin.version>
		<clirr-maven-plugin.version>2.7</clirr-maven-plugin.version>
		<commons-collections.version>3.2.2</commons-collections.version>
		<commons-io.version>2.14.0</commons-io.version>
		<dependency-mediator-maven-plugin.version>1.0.2</dependency-mediator-maven-plugin.version>
		<derby.version>10.14.2.0</derby.version>
		<extra-enforcer-rules.version>1.9.0</extra-enforcer-rules.version>
		<findbugs-maven-plugin.version>3.0.4</findbugs-maven-plugin.version>
		<grpc-java.version>1.64.2</grpc-java.version>
		<hessian.version>4.0.63</hessian.version>
		<jacoco-maven-plugin.version>0.8.7</jacoco-maven-plugin.version>
		<java.version>1.8</java.version>
		<jjwt.version>0.11.2</jjwt.version>
		<jraft-core.version>1.3.14</jraft-core.version>
		<junit5.version>5.10.2</junit5.version>
		<log4j.version>2.17.1</log4j.version>
		<logback.version>1.2.13</logback.version>
		<maven-assembly-plugin.version>3.0.0</maven-assembly-plugin.version>
		<maven-checkstyle-plugin.version>3.1.2</maven-checkstyle-plugin.version>
		<maven-compiler-plugin.version>3.5.1</maven-compiler-plugin.version>
		<maven-easyj-version>1.1.5</maven-easyj-version>
		<maven-enforcer-plugin.version>3.5.0</maven-enforcer-plugin.version>
		<maven-failsafe-plugin.version>3.2.5</maven-failsafe-plugin.version>
		<maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
		<maven-jar-plugin.version>3.2.2</maven-jar-plugin.version>
		<maven-javadoc-plugin.version>2.10.4</maven-javadoc-plugin.version>
		<maven-pmd-plugin.version>3.8</maven-pmd-plugin.version>
		<maven-resources-plugin.version>3.0.2</maven-resources-plugin.version>
		<maven-source-plugin.version>3.0.1</maven-source-plugin.version>
		<maven-surefire-plugin.version>3.2.5</maven-surefire-plugin.version>
		<maven.compiler.source>${java.version}</maven.compiler.source>
		<maven.compiler.target>${java.version}</maven.compiler.target>
		<maven.javadoc.skip>true</maven.javadoc.skip>
		<maven.test.skip>false</maven.test.skip>
		<mockito.version>4.11.0</mockito.version>
		<mysql-connector-java.version>8.2.0</mysql-connector-java.version>
		<nacos.logback.adapter.version>1.1.3</nacos.logback.adapter.version>
		<p3c-pmd.version>1.3.0</p3c-pmd.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<proto-google-common-protos.version>2.17.0</proto-google-common-protos.version>
		<protobuf-java.version>3.25.5</protobuf-java.version>
		<protoc-gen-grpc-java.version>${grpc-java.version}</protoc-gen-grpc-java.version>
		<rpc-grpc-impl.version>${jraft-core.version}</rpc-grpc-impl.version>
		<servlet-api.version>3.0</servlet-api.version>
		<slf4j-api.version>1.7.26</slf4j-api.version>
		<sonar-maven-plugin.version>3.0.2</sonar-maven-plugin.version>
		<sonar.exclusions>file:**/generated-sources/**,**/test/**</sonar.exclusions>
		<spring-boot-dependencies.version>2.7.18</spring-boot-dependencies.version>
		<spring-security.version>5.8.15</spring-security.version>
		<spring.version>5.3.39</spring.version>
		<tomcat.version>9.0.98</tomcat.version>
		<versions-maven-plugin.version>2.2</versions-maven-plugin.version>
	</properties>
	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.junit</groupId>
				<artifactId>junit-bom</artifactId>
				<version>5.10.2</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.mockito</groupId>
				<artifactId>mockito-bom</artifactId>
				<version>4.11.0</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-framework-bom</artifactId>
				<version>5.3.39</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework.security</groupId>
				<artifactId>spring-security-bom</artifactId>
				<version>5.8.15</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-dependencies</artifactId>
				<version>2.7.18</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.apache.tomcat</groupId>
				<artifactId>tomcat-annotations-api</artifactId>
				<version>9.0.98</version>
			</dependency>
			<dependency>
				<groupId>org.apache.tomcat</groupId>
				<artifactId>tomcat-jdbc</artifactId>
				<version>9.0.98</version>
			</dependency>
			<dependency>
				<groupId>org.apache.tomcat</groupId>
				<artifactId>tomcat-jsp-api</artifactId>
				<version>9.0.98</version>
			</dependency>
			<dependency>
				<groupId>org.apache.tomcat.embed</groupId>
				<artifactId>tomcat-embed-core</artifactId>
				<version>9.0.98</version>
			</dependency>
			<dependency>
				<groupId>org.apache.tomcat.embed</groupId>
				<artifactId>tomcat-embed-el</artifactId>
				<version>9.0.98</version>
			</dependency>
			<dependency>
				<groupId>org.apache.tomcat.embed</groupId>
				<artifactId>tomcat-embed-jasper</artifactId>
				<version>9.0.98</version>
			</dependency>
			<dependency>
				<groupId>org.apache.tomcat.embed</groupId>
				<artifactId>tomcat-embed-websocket</artifactId>
				<version>9.0.98</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-config</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-core</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-persistence</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-naming</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-api</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-client</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-logback-adapter-12</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>logback-adapter</artifactId>
				<version>1.1.3</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-log4j2-adapter</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-test</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-common</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-cmdb</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-console</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-distribution</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-example</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-address</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-istio</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-prometheus</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-consistency</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-auth-plugin</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-encryption-plugin</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-config-plugin</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-control-plugin</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-trace-plugin</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-datasource-plugin</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-custom-environment-plugin</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-auth</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-sys</artifactId>
				<version>2.5.1</version>
			</dependency>
			<dependency>
				<groupId>javax.servlet</groupId>
				<artifactId>servlet-api</artifactId>
				<version>3.0</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.zaxxer</groupId>
				<artifactId>HikariCP</artifactId>
				<version>3.4.2</version>
			</dependency>
			<dependency>
				<groupId>com.caucho</groupId>
				<artifactId>hessian</artifactId>
				<version>4.0.63</version>
			</dependency>
			<dependency>
				<groupId>commons-io</groupId>
				<artifactId>commons-io</artifactId>
				<version>2.14.0</version>
			</dependency>
			<dependency>
				<groupId>commons-collections</groupId>
				<artifactId>commons-collections</artifactId>
				<version>3.2.2</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-api</artifactId>
				<version>1.7.26</version>
			</dependency>
			<dependency>
				<groupId>ch.qos.logback</groupId>
				<artifactId>logback-classic</artifactId>
				<version>1.2.13</version>
			</dependency>
			<dependency>
				<groupId>ch.qos.logback</groupId>
				<artifactId>logback-core</artifactId>
				<version>1.2.13</version>
			</dependency>
			<dependency>
				<groupId>org.apache.logging.log4j</groupId>
				<artifactId>log4j-core</artifactId>
				<version>2.17.1</version>
			</dependency>
			<dependency>
				<groupId>org.apache.logging.log4j</groupId>
				<artifactId>log4j-api</artifactId>
				<version>2.17.1</version>
			</dependency>
			<dependency>
				<groupId>org.apache.logging.log4j</groupId>
				<artifactId>log4j-slf4j-impl</artifactId>
				<version>2.17.1</version>
			</dependency>
			<dependency>
				<groupId>com.mysql</groupId>
				<artifactId>mysql-connector-j</artifactId>
				<version>8.2.0</version>
			</dependency>
			<dependency>
				<groupId>org.apache.derby</groupId>
				<artifactId>derby</artifactId>
				<version>10.14.2.0</version>
			</dependency>
			<dependency>
				<groupId>com.alipay.sofa</groupId>
				<artifactId>jraft-core</artifactId>
				<version>1.3.14</version>
				<exclusions>
					<exclusion>
						<groupId>com.alipay.sofa</groupId>
						<artifactId>bolt</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.apache.logging.log4j</groupId>
						<artifactId>log4j-api</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.apache.logging.log4j</groupId>
						<artifactId>log4j-core</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.apache.logging.log4j</groupId>
						<artifactId>log4j-slf4j-impl</artifactId>
					</exclusion>
					<exclusion>
						<groupId>org.apache.logging.log4j</groupId>
						<artifactId>log4j-jcl</artifactId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>com.alipay.sofa</groupId>
				<artifactId>rpc-grpc-impl</artifactId>
				<version>1.3.14</version>
			</dependency>
			<dependency>
				<groupId>io.jsonwebtoken</groupId>
				<artifactId>jjwt-api</artifactId>
				<version>0.11.2</version>
			</dependency>
			<dependency>
				<groupId>io.jsonwebtoken</groupId>
				<artifactId>jjwt-impl</artifactId>
				<version>0.11.2</version>
				<scope>runtime</scope>
			</dependency>
			<dependency>
				<groupId>io.jsonwebtoken</groupId>
				<artifactId>jjwt-jackson</artifactId>
				<version>0.11.2</version>
				<scope>runtime</scope>
			</dependency>
			<dependency>
				<groupId>javax.annotation</groupId>
				<artifactId>javax.annotation-api</artifactId>
				<version>1.3.2</version>
			</dependency>
			<dependency>
				<groupId>io.grpc</groupId>
				<artifactId>grpc-netty-shaded</artifactId>
				<version>1.64.2</version>
			</dependency>
			<dependency>
				<groupId>io.grpc</groupId>
				<artifactId>grpc-protobuf</artifactId>
				<version>1.64.2</version>
			</dependency>
			<dependency>
				<groupId>io.grpc</groupId>
				<artifactId>grpc-stub</artifactId>
				<version>1.64.2</version>
			</dependency>
			<dependency>
				<groupId>io.grpc</groupId>
				<artifactId>grpc-util</artifactId>
				<version>1.64.2</version>
			</dependency>
			<dependency>
				<groupId>io.grpc</groupId>
				<artifactId>grpc-testing</artifactId>
				<version>1.64.2</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>com.google.api.grpc</groupId>
				<artifactId>proto-google-common-protos</artifactId>
				<version>2.17.0</version>
			</dependency>
			<dependency>
				<groupId>com.google.protobuf</groupId>
				<artifactId>protobuf-java</artifactId>
				<version>3.25.5</version>
			</dependency>
			<dependency>
				<groupId>com.google.code.gson</groupId>
				<artifactId>gson</artifactId>
				<version>2.9.0</version>
			</dependency>
			<dependency>
				<groupId>org.yaml</groupId>
				<artifactId>snakeyaml</artifactId>
				<version>2.0</version>
			</dependency>
		</dependencies>
	</dependencyManagement>
	<dependencies>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-inline</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-junit-jupiter</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>
	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<artifactId>maven-jar-plugin</artifactId>
					<version>${maven-jar-plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-maven-plugin</artifactId>
					<version>${spring-boot-dependencies.version}</version>
					<configuration>
						<attach>false</attach>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>versions-maven-plugin</artifactId>
				<version>${versions-maven-plugin.version}</version>
			</plugin>
			<plugin>
				<groupId>com.github.vongosling</groupId>
				<artifactId>dependency-mediator-maven-plugin</artifactId>
				<version>${dependency-mediator-maven-plugin.version}</version>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>clirr-maven-plugin</artifactId>
				<version>${clirr-maven-plugin.version}</version>
			</plugin>
			<plugin>
				<artifactId>maven-enforcer-plugin</artifactId>
				<version>${maven-enforcer-plugin.version}</version>
				<executions>
					<execution>
						<id>enforce-ban-circular-dependencies</id>
						<goals>
							<goal>enforce</goal>
						</goals>
					</execution>
				</executions>
				<dependencies>
					<dependency>
						<groupId>org.codehaus.mojo</groupId>
						<artifactId>extra-enforcer-rules</artifactId>
						<version>${extra-enforcer-rules.version}</version>
					</dependency>
				</dependencies>
				<configuration>
					<rules>
						<banCircularDependencies/>
					</rules>
					<fail>true</fail>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>${maven-compiler-plugin.version}</version>
				<configuration>
					<source>${maven.compiler.source}</source>
					<target>${maven.compiler.target}</target>
					<compilerVersion>${maven.compiler.source}</compilerVersion>
					<showDeprecation>true</showDeprecation>
					<showWarnings>true</showWarnings>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>${maven-javadoc-plugin.version}</version>
				<executions>
					<execution>
						<id>attach-javadocs</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<charset>UTF-8</charset>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-source-plugin</artifactId>
				<version>${maven-source-plugin.version}</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<artifactId>maven-pmd-plugin</artifactId>
				<version>${maven-pmd-plugin.version}</version>
				<executions>
					<execution>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
				<dependencies>
					<dependency>
						<groupId>com.alibaba.p3c</groupId>
						<artifactId>p3c-pmd</artifactId>
						<version>${p3c-pmd.version}</version>
					</dependency>
				</dependencies>
				<configuration>
					<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>
					<printFailingErrors>true</printFailingErrors>
					<excludes>
						<exclude>**/consistency/entity/*.java</exclude>
						<exclude>**/istio/model/mcp/*.java</exclude>
						<exclude>**/istio/model/naming/*.java</exclude>
						<exclude>**/istio/model/*.java</exclude>
						<exclude>**/api/grpc/auto/*.java</exclude>
						<exclude>**/istio/mcp/**</exclude>
						<exclude>**/istio/networking/**</exclude>
						<exclude>**/google/protobuf/**</exclude>
						<exclude>**/common/packagescan/classreading/*.java</exclude>
						<exclude>**/common/packagescan/resource/*.java</exclude>
						<exclude>**/common/packagescan/util/*.java</exclude>
					</excludes>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<version>${maven-checkstyle-plugin.version}</version>
				<executions>
					<execution>
						<id>validate</id>
						<phase>validate</phase>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<configLocation>style/NacosCheckStyle.xml</configLocation>
					<includeTestSourceDirectory>true</includeTestSourceDirectory>
					<encoding>UTF-8</encoding>
					<consoleOutput>true</consoleOutput>
					<failsOnError>true</failsOnError>
					<excludes>**/consistency/entity/**,**/nacos/test/**,**/api/grpc/auto/**,**/istio/**,**/protobuf/**</excludes>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.rat</groupId>
				<artifactId>apache-rat-plugin</artifactId>
				<version>${apache-rat-plugin.version}</version>
				<executions>
					<execution>
						<phase>verify</phase>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<excludes>
						<exclude>.editorconfig</exclude>
						<exclude>.travis.yml</exclude>
						<exclude>codecov.yml</exclude>
						<exclude>CONTRIBUTING.md</exclude>
						<exclude>CODE_OF_CONDUCT.md</exclude>
						<exclude>CHANGELOG.md</exclude>
						<exclude>style/codeStyle.md</exclude>
						<exclude>REPORTING-BUGS.md</exclude>
						<exclude>README.md</exclude>
						<exclude>.github/**/*</exclude>
						<exclude>doc/*</exclude>
						<exclude>derby.log</exclude>
						<exclude>logs/*</exclude>
						<exclude>src/main/resources/static/**</exclude>
						<exclude>**/istio/model/**</exclude>
						<exclude>**/consistency/entity/**</exclude>
						<exclude>**/*.txt</exclude>
						<exclude>**/*.factories</exclude>
						<exclude>/console-ui/**</exclude>
						<exclude>**/gogo.proto</exclude>
						<exclude>**/any.proto</exclude>
						<exclude>src/main/java/com/alibaba/nacos/common/packagescan/classreading/**</exclude>
						<exclude>.flattened-pom.xml</exclude>
						<exclude>**/announcement*.conf</exclude>
						<exclude>**/console-guide.conf</exclude>
						<exclude>**/reflect-config.json</exclude>
						<exclude>**/resource-config.json</exclude>
						<exclude>**/proxy-config.json</exclude>
						<exclude>**/jni-config.json</exclude>
						<exclude>**/predefined-classes-config.json</exclude>
						<exclude>**/serialization-config.json</exclude>
						<exclude>**/filter-config.json</exclude>
						<exclude>**/disk_cache_test/**</exclude>
						<exclude>**/failover_test/**</exclude>
						<exclude>lefthook.yml</exclude>
					</excludes>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-resources-plugin</artifactId>
				<version>${maven-resources-plugin.version}</version>
				<configuration>
					<encoding>${project.build.sourceEncoding}</encoding>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<version>${jacoco-maven-plugin.version}</version>
				<executions>
					<execution>
						<id>default-prepare-agent</id>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
					</execution>
					<execution>
						<id>default-report</id>
						<phase>test</phase>
						<goals>
							<goal>report</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<skip>${maven.test.skip}</skip>
					<destFile>${project.build.directory}/coverage-reports/jacoco-unit.exec</destFile>
					<dataFile>${project.build.directory}/coverage-reports/jacoco-unit.exec</dataFile>
					<output>file</output>
					<append>true</append>
					<excludes>
						<exclude>**/grpc/auto/**</exclude>
						<exclude>**/packagescan/classreading/**</exclude>
						<exclude>**/packagescan/resource/**</exclude>
						<exclude>**/packagescan/util/**</exclude>
					</excludes>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>${maven-surefire-plugin.version}</version>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>findbugs-maven-plugin</artifactId>
				<version>${findbugs-maven-plugin.version}</version>
			</plugin>
			<plugin>
				<groupId>org.sonarsource.scanner.maven</groupId>
				<artifactId>sonar-maven-plugin</artifactId>
				<version>${sonar-maven-plugin.version}</version>
			</plugin>
			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
				<version>${maven-assembly-plugin.version}</version>
			</plugin>
			<plugin>
				<groupId>icu.easyj.maven.plugins</groupId>
				<artifactId>easyj-maven-plugin</artifactId>
				<version>${maven-easyj-version}</version>
				<executions>
					<execution>
						<id>flatten-pom</id>
						<goals>
							<goal>simplify-pom</goal>
						</goals>
					</execution>
					<execution>
						<id>clean-flattened-pom</id>
						<goals>
							<goal>clean-simplify-pom</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<simplifiedPomFileName>.flattened-pom.xml</simplifiedPomFileName>
					<useTabIndent>true</useTabIndent>
				</configuration>
			</plugin>
		</plugins>
	</build>
	<reporting>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>findbugs-maven-plugin</artifactId>
				<version>${findbugs-maven-plugin.version}</version>
			</plugin>
		</plugins>
	</reporting>
	<profiles>
		<profile>
			<id>jdk8</id>
			<activation>
				<jdk>[1.8,)</jdk>
			</activation>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-javadoc-plugin</artifactId>
						<version>2.10.4</version>
						<configuration>
							<additionalparam>-Xdoclint:none</additionalparam>
						</configuration>
					</plugin>
				</plugins>
			</build>
			<reporting>
				<plugins>
					<plugin>
						<artifactId>maven-javadoc-plugin</artifactId>
						<version>2.10.4</version>
						<configuration>
							<additionalparam>-Xdoclint:none</additionalparam>
						</configuration>
					</plugin>
				</plugins>
			</reporting>
		</profile>
		<profile>
			<id>release-sign-artifacts</id>
			<activation>
				<property>
					<name>performRelease</name>
					<value>true</value>
				</property>
			</activation>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-gpg-plugin</artifactId>
						<version>1.6</version>
						<executions>
							<execution>
								<id>sign-artifacts</id>
								<phase>verify</phase>
								<goals>
									<goal>sign</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
			<properties>
				<maven.javadoc.skip>false</maven.javadoc.skip>
			</properties>
		</profile>
		<profile>
			<id>cit-test</id>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-surefire-plugin</artifactId>
						<version>3.2.5</version>
						<configuration>
							<testFailureIgnore>false</testFailureIgnore>
							<includes>
								<include>**/*CITCase.java</include>
							</includes>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
			<id>nit-test</id>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-surefire-plugin</artifactId>
						<version>3.2.5</version>
						<configuration>
							<testFailureIgnore>false</testFailureIgnore>
							<includes>
								<include>**/naming/*ITCase.java</include>
							</includes>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
			<id>sonar-apache</id>
			<properties>
				<sonar.host.url>https://builds.apache.org/analysis</sonar.host.url>
			</properties>
		</profile>
		<profile>
			<id>remove-test-data</id>
			<build>
				<plugins>
					<plugin>
						<artifactId>maven-clean-plugin</artifactId>
						<configuration>
							<followSymLinks>false</followSymLinks>
							<filesets>
								<fileset>
									<directory>/Users/xiweng.yy/nacos/data</directory>
								</fileset>
							</filesets>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
</project>
