| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| ~ Copyright 1999-2019 Seata.io Group. |
| ~ |
| ~ Licensed under the Apache License, Version 2.0 (the "License"); |
| ~ you may not use this file except in compliance with the License. |
| ~ You may obtain a copy of the License at |
| ~ |
| ~ http://www.apache.org/licenses/LICENSE-2.0 |
| ~ |
| ~ Unless required by applicable law or agreed to in writing, software |
| ~ distributed under the License is distributed on an "AS IS" BASIS, |
| ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| ~ See the License for the specific language governing permissions and |
| ~ limitations under the License. |
| --> |
| <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>io.seata</groupId> |
| <artifactId>seata-parent</artifactId> |
| <version>${revision}</version> |
| <modules> |
| <module>all</module> |
| <module>bom</module> |
| <module>common</module> |
| <module>config</module> |
| <module>core</module> |
| <module>discovery</module> |
| <module>distribution</module> |
| <module>integration/dubbo</module> |
| <module>integration/dubbo-alibaba</module> |
| <module>integration/sofa-rpc</module> |
| <module>integration/motan</module> |
| <module>integration/grpc</module> |
| <module>rm</module> |
| <module>rm-datasource</module> |
| <module>server</module> |
| <module>spring</module> |
| <module>tcc</module> |
| <module>test</module> |
| <module>tm</module> |
| <module>metrics</module> |
| <module>codec</module> |
| <module>seata-spring-boot-starter</module> |
| <module>compressor</module> |
| <module>saga</module> |
| </modules> |
| <packaging>pom</packaging> |
| |
| <name>Seata Parent POM ${project.version}</name> |
| <url>http://seata.io</url> |
| <description>top seata project pom.xml file</description> |
| <prerequisites> |
| <maven>3.6.0</maven> |
| </prerequisites> |
| <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>Seata</id> |
| <name>Seata</name> |
| <url>http://seata.io</url> |
| </developer> |
| </developers> |
| |
| <organization> |
| <name>Seata</name> |
| <url>https://github.com/seata</url> |
| </organization> |
| |
| <issueManagement> |
| <system>github</system> |
| <url>https://github.com/seata/seata/issues</url> |
| </issueManagement> |
| |
| <scm> |
| <url>git@github.com:seata/seata.git</url> |
| <connection>scm:git@github.com:seata/seata.git</connection> |
| <developerConnection>scm:git@github.com:seata/seata.git</developerConnection> |
| </scm> |
| |
| <properties> |
| <!-- seata version --> |
| <revision>1.0.0-SNAPSHOT</revision> |
| |
| <!-- Compiler settings properties --> |
| <maven.compiler.source>1.8</maven.compiler.source> |
| <maven.compiler.target>1.8</maven.compiler.target> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> |
| <!-- Maven plugins --> |
| <maven.test.skip>false</maven.test.skip> |
| <jacoco-maven-plugin.version>0.8.3</jacoco-maven-plugin.version> |
| <flatten-maven-plugin.version>1.1.0</flatten-maven-plugin.version> |
| <maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version> |
| <maven-compiler-plugin.version>3.6.0</maven-compiler-plugin.version> |
| <p3c-pmd.version>1.3.6</p3c-pmd.version> |
| <maven-pmd-plugin.version>3.8</maven-pmd-plugin.version> |
| <maven-javadoc-plugin.version>3.0.0</maven-javadoc-plugin.version> |
| <maven-source-plugin.version>2.2.1</maven-source-plugin.version> |
| <protobuf-maven-plugin.version>0.5.0</protobuf-maven-plugin.version> |
| <license-maven-plugin.version>3.0</license-maven-plugin.version> |
| <maven-checkstyle-plugin.version>3.0.0</maven-checkstyle-plugin.version> |
| |
| <!-- for test --> |
| <junit-jupiter.version>5.4.2</junit-jupiter.version> |
| <mockito.version>2.23.4</mockito.version> |
| <assertj-core.version>3.12.2</assertj-core.version> |
| <junit-platform-launcher.version>1.4.2</junit-platform-launcher.version> |
| |
| </properties> |
| |
| <!--test--> |
| <dependencies> |
| <dependency> |
| <groupId>org.junit.jupiter</groupId> |
| <artifactId>junit-jupiter-engine</artifactId> |
| <version>${junit-jupiter.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.junit.jupiter</groupId> |
| <artifactId>junit-jupiter-params</artifactId> |
| <version>${junit-jupiter.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.junit.platform</groupId> |
| <artifactId>junit-platform-launcher</artifactId> |
| <version>${junit-platform-launcher.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.mockito</groupId> |
| <artifactId>mockito-junit-jupiter</artifactId> |
| <version>${mockito.version}</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.assertj</groupId> |
| <artifactId>assertj-core</artifactId> |
| <version>${assertj-core.version}</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>io.seata</groupId> |
| <artifactId>seata-bom</artifactId> |
| <version>${revision}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| |
| </dependencies> |
| </dependencyManagement> |
| |
| <profiles> |
| <profile> |
| <id>release</id> |
| <build> |
| <plugins> |
| <!-- Javadoc --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>${maven-javadoc-plugin.version}</version> |
| <configuration> |
| <charset>UTF-8</charset> |
| <failOnError>false</failOnError> |
| </configuration> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <!-- GPG --> |
| <plugin> |
| <groupId>org.sonatype.plugins</groupId> |
| <artifactId>nexus-staging-maven-plugin</artifactId> |
| <version>1.6.7</version> |
| <extensions>true</extensions> |
| <configuration> |
| <serverId>oss_seata</serverId> |
| <nexusUrl>https://oss.sonatype.org/</nexusUrl> |
| <autoReleaseAfterClose>false</autoReleaseAfterClose> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-gpg-plugin</artifactId> |
| <version>1.6</version> |
| <executions> |
| <execution> |
| <id>sign-artifacts</id> |
| <phase>verify</phase> |
| <goals> |
| <goal>sign</goal> |
| </goals> |
| <configuration> |
| <keyname>F72AF874ECA9BBA7751C2DFD553EBAF7AC17F320</keyname> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <distributionManagement> |
| <snapshotRepository> |
| <id>oss_seata</id> |
| <url>https://oss.sonatype.org/content/repositories/snapshots</url> |
| </snapshotRepository> |
| <repository> |
| <id>oss_seata</id> |
| <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url> |
| </repository> |
| </distributionManagement> |
| |
| </profile> |
| <profile> |
| <id>licenseCheck</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>license-maven-plugin</artifactId> |
| <version>1.20</version> |
| <executions> |
| <execution> |
| <id>license-check</id> |
| <phase>generate-sources</phase> |
| <goals> |
| <goal>add-third-party</goal> |
| </goals> |
| <configuration> |
| <includeOptional>false</includeOptional> |
| <useMissingFile>false</useMissingFile> |
| <failOnMissing>false</failOnMissing> |
| <licenseMerges> |
| <licenseMerge>Apache License, Version 2.0|The Apache Software License, Version |
| 2.0|ASF 2.0|Apache 2|Apache-2.0|Apache 2.0 License|Apache 2.0|Apache License v2.0|Apache License 2.0|The Apache License, Version 2.0|The Apache Software License, Version 2.0 |
| </licenseMerge> |
| <licenseMerge>The MIT License|MIT License</licenseMerge> |
| <licenseMerge>The 3-Clause BSD License|New BSD License|3-Clause BSD |
| License|BSD|3-Clause BSD License|The New BSD License |
| </licenseMerge> |
| </licenseMerges> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| <build> |
| <extensions> |
| <extension> |
| <groupId>kr.motd.maven</groupId> |
| <artifactId>os-maven-plugin</artifactId> |
| <version>1.5.0.Final</version> |
| </extension> |
| </extensions> |
| <plugins> |
| <!-- Source --> |
| <plugin> |
| <groupId>org.xolstice.maven.plugins</groupId> |
| <artifactId>protobuf-maven-plugin</artifactId> |
| <version>${protobuf-maven-plugin.version}</version> |
| <configuration> |
| <protoSourceRoot>${project.basedir}/src/main/resources/protobuf/io/seata/protocol/transcation/</protoSourceRoot> |
| <protocArtifact> |
| com.google.protobuf:protoc:3.3.0:exe:${os.detected.classifier} |
| </protocArtifact> |
| </configuration> |
| <executions> |
| <execution> |
| <goals> |
| <goal>compile</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-source-plugin</artifactId> |
| <version>${maven-source-plugin.version}</version> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>jar-no-fork</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-pmd-plugin</artifactId> |
| <version>${maven-pmd-plugin.version}</version> |
| <configuration> |
| <sourceEncoding>${project.build.sourceEncoding}</sourceEncoding> |
| <minimumPriority>2</minimumPriority> |
| <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> |
| <excludes> |
| <exclude>**/generated/*.java</exclude> |
| </excludes> |
| </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>${p3c-pmd.version}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>${maven-compiler-plugin.version}</version> |
| <configuration> |
| <source>${maven.compiler.source}</source> |
| <target>${maven.compiler.target}</target> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>${jacoco-maven-plugin.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> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>${maven-surefire-plugin.version}</version> |
| </plugin> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>flatten-maven-plugin</artifactId> |
| <version>${flatten-maven-plugin.version}</version> |
| <configuration> |
| <updatePomFile>true</updatePomFile> |
| <flattenMode>resolveCiFriendliesOnly</flattenMode> |
| </configuration> |
| <executions> |
| <execution> |
| <id>flatten</id> |
| <phase>process-resources</phase> |
| <goals> |
| <goal>flatten</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>flatten.clean</id> |
| <phase>clean</phase> |
| <goals> |
| <goal>clean</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>com.mycila</groupId> |
| <artifactId>license-maven-plugin</artifactId> |
| <version>${license-maven-plugin.version}</version> |
| <executions> |
| <execution> |
| <phase>generate-sources</phase> |
| <goals> |
| <goal>remove</goal> |
| <goal>format</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <quiet>true</quiet> |
| <header>${user.dir}/style/copyright</header> |
| <includes> |
| <include>**/src/main/java/**</include> |
| <include>**/src/test/java/**</include> |
| </includes> |
| <excludes> |
| <exclude>**/generated/**</exclude> |
| </excludes> |
| <strictCheck>true</strictCheck> |
| <mapping> |
| <java>SLASHSTAR_STYLE</java> |
| </mapping> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>${maven-checkstyle-plugin.version}</version> |
| <executions> |
| <execution> |
| <id>validate</id> |
| <phase>validate</phase> |
| <configuration> |
| <configLocation>${user.dir}/style/seata_checkstyle.xml</configLocation> |
| <encoding>UTF-8</encoding> |
| <consoleOutput>true</consoleOutput> |
| <failsOnError>false</failsOnError> |
| <failOnViolation>false</failOnViolation> |
| <excludes>**/generated/**</excludes> |
| </configuration> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| |
| </project> |