8 Star 39 Fork 20

Gitee 极速下载/transmittable-thread-local

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
此仓库是为了提升国内下载速度的镜像仓库,每日同步一次。 原始仓库: https://github.com/alibaba/transmittable-thread-local
克隆/下载
pom.xml 28.06 KB
一键复制 编辑 原始数据 按行查看 历史
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912
<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.ttl3</groupId>
<artifactId>ttl3-parent</artifactId>
<version>3.x-SNAPSHOT</version>
<packaging>pom</packaging>
<name>${project.artifactId}</name>
<description>
📌 The missing Java™ std lib(simple &amp; 0-dependency) for framework/middleware, provide an enhanced
InheritableThreadLocal that transmits values between threads even using thread pooling components.
</description>
<url>https://github.com/alibaba/transmittable-thread-local</url>
<inceptionYear>2013</inceptionYear>
<licenses>
<license>
<name>Apache 2</name>
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
<comments>A business-friendly OSS license</comments>
</license>
</licenses>
<scm>
<connection>scm:git:git@github.com:alibaba/transmittable-thread-local.git</connection>
<developerConnection>scm:git:git@github.com:alibaba/transmittable-thread-local.git</developerConnection>
<url>https://github.com/alibaba/transmittable-thread-local</url>
</scm>
<issueManagement>
<system>GitHub Issues</system>
<url>https://github.com/alibaba/transmittable-thread-local/issues</url>
</issueManagement>
<ciManagement>
<system>GitHub Actions</system>
<url>https://github.com/alibaba/transmittable-thread-local/actions</url>
</ciManagement>
<organization>
<name>Alibaba</name>
<url>https://www.alibaba.com</url>
</organization>
<developers>
<developer>
<name>Jerry Lee</name>
<id>oldratlee</id>
<email>oldratlee(AT)gmail(DOT)com</email>
<roles>
<role>Developer</role>
</roles>
<timezone>+8</timezone>
<url>https://github.com/oldratlee</url>
<organization>Alibaba</organization>
<organizationUrl>https://www.alibaba.com</organizationUrl>
</developer>
</developers>
<modules>
<module>ttl-core</module>
<module>ttl-agent</module>
<module>ttl-kotlin</module>
<module>ttl2-compatible</module>
<module>ttl-bom</module>
<module>ttl-integrations/vertx4-ttl-integration</module>
<module>ttl-integrations/vertx3-ttl-integration</module>
<module>ttl-integrations/sample-ttl-agent-extension-transformlet</module>
</modules>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>${maven.compiler.source}</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<!-- overridden by submodule that need skip deploy -->
<maven.deploy.skip>false</maven.deploy.skip>
<javadoc.ttl.base.link>
https://alibaba.github.io/transmittable-thread-local/apidocs/${project.version}
</javadoc.ttl.base.link>
<spotbugs.annotations.version>4.8.6</spotbugs.annotations.version>
<jsr305.version>3.0.2</jsr305.version>
<jetbrains.annotations.version>24.1.0</jetbrains.annotations.version>
<kotlin.version>1.9.24</kotlin.version>
<kotlin.compiler.jvmTarget>${maven.compiler.source}</kotlin.compiler.jvmTarget>
<kotlin.coroutine.version>1.8.1</kotlin.coroutine.version>
<!-- https://kotlin.github.io/dokka/1.7.10/user_guide/maven/usage/ -->
<dokka.version>1.9.20</dokka.version>
<dokka.link.jdk.version>8</dokka.link.jdk.version>
<slf4j.version>2.0.7</slf4j.version>
<!-- testing dependencies versions -->
<junit5.version>5.10.2</junit5.version>
<kotest.version>5.9.1</kotest.version>
<!--
slf4j simple logger configuration for test
the system properties are supported to configure the behavior of slf4j simple logger
https://www.slf4j.org/api/org/slf4j/simple/SimpleLogger.html
-->
<ttl.test.logger.level>warn</ttl.test.logger.level> <!-- overridden by maven -D options -->
<argLine.slf4j.simple.logger.default.d.options>
-Dorg.slf4j.simpleLogger.logFile=System.err
-Dorg.slf4j.simpleLogger.defaultLogLevel=${ttl.test.logger.level}
</argLine.slf4j.simple.logger.default.d.options>
<argLine.slf4j.simple.logger.extra.d.options/> <!-- overridden by maven -D options -->
<argLine.slf4j.simple.logger.d.options>
${argLine.slf4j.simple.logger.default.d.options} ${argLine.slf4j.simple.logger.extra.d.options}
</argLine.slf4j.simple.logger.d.options>
<argLine>${argLine.slf4j.simple.logger.d.options}</argLine> <!-- overridden by profile -->
</properties>
<dependencies>
<!-- QA libs -->
<dependency>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-annotations</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<optional>true</optional>
</dependency>
<!-- logging libs -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.github.microutils</groupId>
<artifactId>kotlin-logging-jvm</artifactId>
<scope>test</scope>
</dependency>
<!-- testing libs -->
<dependency>
<groupId>io.kotest</groupId>
<artifactId>kotest-runner-junit4-jvm</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.kotest</groupId>
<artifactId>kotest-runner-junit5-jvm</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.kotest</groupId>
<artifactId>kotest-assertions-core-jvm</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.kotest</groupId>
<artifactId>kotest-property-jvm</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.mockk</groupId>
<artifactId>mockk-jvm</artifactId>
<scope>test</scope>
</dependency>
<!--
Executing JUnit 4 and JUnit 5 tests in a same build
https://stackoverflow.com/a/47158584/922688
-->
<dependency>
<!-- JUnit Jupiter Engine to depend on the JUnit5 engine and JUnit 5 API -->
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<!-- JUnit Jupiter Engine to depend on the JUnit4 engine and JUnit 4 API -->
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<!-- bom -->
<dependency>
<!-- https://github.com/raphw/byte-buddy/issues/1264 -->
<groupId>net.bytebuddy</groupId>
<artifactId>byte-buddy-parent</artifactId>
<version>1.14.17</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-bom</artifactId>
<version>${kotlin.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlinx</groupId>
<artifactId>kotlinx-coroutines-bom</artifactId>
<version>${kotlin.coroutine.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.junit</groupId>
<artifactId>junit-bom</artifactId>
<version>${junit5.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!--
QA libs
make qa libs optional, 0-dependency and smaller deployment
-->
<dependency>
<!--
JSR305 is already Dormant status, so SpotBugs does not release jsr305 jar file.
Please continue using findbugs’ one.
depend on spotbugs-annotations instead.
https://spotbugs.readthedocs.io/en/stable/migration.html
-->
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-annotations</artifactId>
<version>${spotbugs.annotations.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
<version>${jsr305.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<!-- https://www.jetbrains.com/help/idea/annotating-source-code.html -->
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>${jetbrains.annotations.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.30.2-GA</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
<dependency>
<groupId>io.reactivex.rxjava2</groupId>
<artifactId>rxjava</artifactId>
<version>2.2.21</version>
</dependency>
<dependency>
<groupId>io.reactivex.rxjava2</groupId>
<artifactId>rxkotlin</artifactId>
<version>2.4.0</version>
</dependency>
<!-- logging libs -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>${slf4j.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.github.microutils</groupId>
<artifactId>kotlin-logging-jvm</artifactId>
<version>3.0.0</version>
</dependency>
<!--
testing libs
-->
<!-- https://github.com/kotlintest/kotlintest -->
<dependency>
<groupId>io.kotest</groupId>
<artifactId>kotest-runner-junit4-jvm</artifactId>
<version>${kotest.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.kotest</groupId>
<artifactId>kotest-runner-junit5-jvm</artifactId>
<version>${kotest.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.kotest</groupId>
<artifactId>kotest-assertions-core-jvm</artifactId>
<version>${kotest.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.kotest</groupId>
<artifactId>kotest-property-jvm</artifactId>
<version>${kotest.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.mockk</groupId>
<artifactId>mockk-jvm</artifactId>
<version>1.13.7</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
<build>
<plugins>
<plugin>
<!--
Compiling Kotlin and Java sources - Using Maven - Kotlin Programming Language
https://kotlinlang.org/docs/reference/using-maven.html#compiling-kotlin-and-java-sources
Making sure that the kotlin plugin is above the maven-compiler-plugin in your pom.xml file!
-->
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<executions>
<execution>
<id>compile</id>
<goals>
<goal>compile</goal>
</goals>
<configuration>
<sourceDirs>
<sourceDir>${project.basedir}/src/main/java</sourceDir>
</sourceDirs>
</configuration>
</execution>
<execution>
<id>test-compile</id>
<goals>
<goal>test-compile</goal>
</goals>
<configuration>
<sourceDirs>
<sourceDir>${project.basedir}/src/test/java</sourceDir>
</sourceDirs>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<!-- Replacing default-compile as it is treated specially by maven -->
<execution>
<id>default-compile</id>
<phase>none</phase>
</execution>
<!-- Replacing default-testCompile as it is treated specially by maven -->
<execution>
<id>default-testCompile</id>
<phase>none</phase>
</execution>
<execution>
<id>java-compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>java-test-compile</id>
<phase>test-compile</phase>
<goals>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>enforces</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<!-- official docs: https://maven.apache.org/enforcer/enforcer-rules/requireMavenVersion.html -->
<requireMavenVersion>
<version>3.3.9</version>
</requireMavenVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.4.0</version>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.3.1</version>
</plugin>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${kotlin.version}</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.13.0</version>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.3.0</version>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>3.4.2</version>
</plugin>
<plugin>
<artifactId>maven-shade-plugin</artifactId>
<version>3.6.0</version>
<configuration>
<shadeSourcesContent>true</shadeSourcesContent>
<dependencyReducedPomLocation>
${project.build.directory}/dependency-reduced-pom.xml
</dependencyReducedPomLocation>
</configuration>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>3.3.1</version>
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.7.0</version>
</plugin>
<plugin>
<groupId>org.jetbrains.dokka</groupId>
<artifactId>dokka-maven-plugin</artifactId>
<version>${dokka.version}</version>
<executions>
<execution>
<phase>prepare-package</phase>
<goals>
<goal>javadocJar</goal>
<goal>dokka</goal>
</goals>
</execution>
</executions>
<configuration>
<jdkVersion>${dokka.link.jdk.version}</jdkVersion>
</configuration>
</plugin>
<plugin>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.2.4</version>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>3.12.1</version>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>3.1.2</version>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>3.1.2</version>
</plugin>
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.5.0</version>
</plugin>
<plugin>
<groupId>io.github.git-commit-id</groupId>
<artifactId>git-commit-id-maven-plugin</artifactId>
<version>9.0.0</version>
</plugin>
<plugin>
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
<version>4.8.3.1</version>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.12</version>
</plugin>
<plugin>
<!--
https://www.mojohaus.org/exec-maven-plugin/
https://www.mojohaus.org/exec-maven-plugin/exec-mojo.html
-->
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<executable>${java.home}/bin/java</executable>
<classpathScope>test</classpathScope>
<arguments>
<argument>-Xmx1g</argument>
<argument>-Xms256m</argument>
<argument>-ea</argument>
<argument>-server</argument>
<argument>-Duser.language=en</argument>
<argument>-Duser.country=US</argument>
<argument>-classpath</argument>
<classpath/>
<argument>${exec.mainClass}</argument>
</arguments>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.7.0</version>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>gen-src</id>
<activation>
<property>
<name>performRelease</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-source-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>gen-api-doc</id>
<activation>
<property>
<name>performRelease</name>
<value>true</value>
</property>
</activation>
<properties>
<javadoc.default.exclude.packages>
*.internal:*.internal.*:*.internal.*.*:*.internal.*.*.*:*.internal.*.*.*.*
</javadoc.default.exclude.packages>
<!--
Apache Maven Javadoc Plugin – Configuring links and offlineLinks Parameters
https://maven.apache.org/plugins/maven-javadoc-plugin/examples/links-configuration.html
more infos about link setting:
Links to JSR 305 in Javadoc are broken https://github.com/google/guava/issues/2479
Fix links to javadoc.io for Maven Javadoc Plugin #2628 https://github.com/google/guava/pull/2628
Can't link to JDK10 in Javadoc comments https://stackoverflow.com/questions/49457896
About package-list vs.element-list
- Can't link to JDK10 in Javadoc comments
https://stackoverflow.com/a/49498219/922688
- Missing javadoc/package-list for release 5.1
https://github.com/gradle/gradle/issues/8183
https://github.com/gradle/gradle/commit/5e88351dd456a5252d21f3a7ad25bff1b62a2fd2
Using the linkoffline Option
https://docs.oracle.com/en/java/javase/21/javadoc/javadoc-command.html#GUID-51213F2C-6E01-4A03-A82A-17428A258A0F
-->
<javadoc.package.list.dir>${maven.multiModuleProjectDirectory}/src/package-list</javadoc.package.list.dir>
<!-- dummy/repeated value, overridden by submodule -->
<javadoc.extra.offlineLinks>-quiet</javadoc.extra.offlineLinks>
</properties>
<build>
<plugins>
<plugin>
<!--
https://maven.apache.org/plugins/maven-javadoc-plugin/javadoc-mojo.html
https://docs.oracle.com/en/java/javase/21/javadoc/javadoc-command.html
-->
<artifactId>maven-javadoc-plugin</artifactId>
<configuration>
<source>8</source>
<show>protected</show>
<charset>UTF-8</charset>
<encoding>UTF-8</encoding>
<docencoding>UTF-8</docencoding>
<quiet>true</quiet>
<!--
How to disable Javadoc warnings in Maven Javadoc Plugin? - Stack Overflow
https://stackoverflow.com/questions/39616344
-->
<doclint>all,-missing</doclint>
<overview>${project.basedir}/src/main/javadoc/overview.html</overview>
<!-- https://maven.apache.org/plugins/maven-javadoc-plugin/examples/exclude-package-names.html -->
<excludePackageNames>${javadoc.default.exclude.packages}</excludePackageNames>
<!-- https://maven.apache.org/plugins/maven-javadoc-plugin/javadoc-mojo.html#detectOfflineLinks -->
<detectOfflineLinks>false</detectOfflineLinks>
<additionalOptions>
<!--
Maven javadoc Search redirects to "/undefined/.." url - Stack Overflow
https://stackoverflow.com/questions/52326318
-->
<additionalOption>-html5</additionalOption>
<additionalOption>-linkoffline</additionalOption>
<additionalOption>
https://www.javadoc.io/doc/com.github.spotbugs/spotbugs-annotations/${spotbugs.annotations.version}/
</additionalOption>
<additionalOption>${javadoc.package.list.dir}/spotbugs-annotations/</additionalOption>
<additionalOption>-linkoffline</additionalOption>
<additionalOption>
https://www.javadoc.io/doc/org.jetbrains/annotations/${jetbrains.annotations.version}/
</additionalOption>
<additionalOption>${javadoc.package.list.dir}/jetbrains-annotations/</additionalOption>
<additionalOption>-linkoffline</additionalOption>
<additionalOption>
https://www.javadoc.io/doc/com.google.code.findbugs/jsr305/${jsr305.version}/
</additionalOption>
<additionalOption>${javadoc.package.list.dir}/jsr305/</additionalOption>
<additionalOption>-linkoffline</additionalOption>
<additionalOption>https://docs.oracle.com/en/java/javase/21/docs/api/java.base/</additionalOption>
<additionalOption>${javadoc.package.list.dir}/java/</additionalOption>
<additionalOption>${javadoc.extra.offlineLinks}</additionalOption>
</additionalOptions>
<additionalJOptions>
<additionalJOption>-J-Duser.language=en</additionalJOption>
<additionalJOption>-J-Duser.country=US</additionalJOption>
</additionalJOptions>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>gen-sign</id>
<activation>
<property>
<name>performRelease</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-gpg-plugin</artifactId>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>lint</id>
<activation>
<property>
<name>performRelease</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<!--
https://spotbugs.github.io/
https://spotbugs.readthedocs.io/en/latest/introduction.html
https://spotbugs.readthedocs.io/en/latest/maven.html
https://spotbugs.github.io/spotbugs-maven-plugin/check-mojo.html
Binds by default to the lifecycle phase: verify.
Spotbugs support @SuppressWarnings
https://github.com/spotbugs/spotbugs/issues/737#issuecomment-416118033
-->
<groupId>com.github.spotbugs</groupId>
<artifactId>spotbugs-maven-plugin</artifactId>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>gen-git-properties</id>
<activation>
<property>
<name>performRelease</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<!--
Maven plugin which includes build-time git repository information into an POJO / *.properties).
Make your apps tell you which version exactly they were built from! Priceless in large distributed deployments.
https://github.com/git-commit-id/git-commit-id-maven-plugin
-->
<plugin>
<groupId>io.github.git-commit-id</groupId>
<artifactId>git-commit-id-maven-plugin</artifactId>
<executions>
<execution>
<id>get-the-git-infos</id>
<goals>
<goal>revision</goal>
</goals>
</execution>
<execution>
<id>validate-the-git-infos</id>
<goals>
<goal>validateRevision</goal>
</goals>
</execution>
</executions>
<configuration>
<validationProperties>
<!-- verify that the current repository is not dirty -->
<validationProperty>
<name>validating git dirty</name>
<value>${git.dirty}</value>
<shouldMatchTo>false</shouldMatchTo>
</validationProperty>
</validationProperties>
<generateGitPropertiesFile>true</generateGitPropertiesFile>
<generateGitPropertiesFilename>
${project.build.outputDirectory}/META-INF/scm/${project.groupId}/${project.artifactId}/git.properties
</generateGitPropertiesFilename>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>gen-code-cov</id>
<activation>
<property>
<!-- https://docs.github.com/en/actions/learn-github-actions/variables#default-environment-variables -->
<name>env.CI</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<!-- for codecov.io -->
<!-- config example: https://github.com/codecov/example-java -->
<!-- plugin docs: https://eclemma.org/jacoco/trunk/doc/ -->
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<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>
</build>
</profile>
<profile>
<id>enforce-when-release</id>
<activation>
<property>
<name>performRelease</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>enforces</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<!--
add maven-enforcer-plugin to make sure the right jdk is used
https://stackoverflow.com/a/18420462/922688
-->
<requireJavaVersion>
<version>17</version>
</requireJavaVersion>
<!-- https://maven.apache.org/enforcer/enforcer-rules/requireProperty.html -->
<requireProperty>
<property>project.version</property>
<regex>^\d\.\d+\.\d+(-(Alpha|Beta|RC)\d+)?$|^\d(\.\d+)?\.(\d+|x)-SNAPSHOT$</regex>
<regexMessage>"Project version(${project.version}) format is invalid!"</regexMessage>
</requireProperty>
<enforceBytecodeVersion>
<maxJdkVersion>${maven.compiler.source}</maxJdkVersion>
</enforceBytecodeVersion>
</rules>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.codehaus.mojo</groupId>
<artifactId>extra-enforcer-rules</artifactId>
<version>1.8.0</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>deploy-settings</id>
<activation>
<property>
<name>performRelease</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<extensions>true</extensions>
<!--
In multi-module builds using the deploy-at-end feature,
the deployment of all components is performed in the last module based on the reactor order.
If this property is set to true in the last module,
all staging deployment for all modules will be skipped.
so, we'll config nexus deploy after every moudle's deploy phase
see: https://github.com/sonatype/nexus-maven-plugins/tree/master/staging/maven-plugin#configuring-the-plugin
-->
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
<!--
If you are deploying to Maven Central, it is the Nexus Staging Plugin that is
doing the deployment instead of the Deploy plugin,
so the configuration of the deploy plugin has no effect.
To make the Nexus deploy plugin skip, set skipNexusStagingDeployMojo
in its configuration to true.
see: https://stackoverflow.com/questions/59552549/preventing-maven-modules-from-being-deployed
-->
<skipNexusStagingDeployMojo>${maven.deploy.skip}</skipNexusStagingDeployMojo>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/mirrors/transmittable-thread-local.git
git@gitee.com:mirrors/transmittable-thread-local.git
mirrors
transmittable-thread-local
transmittable-thread-local
master

搜索帮助