| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| ~ Licensed to the Apache Software Foundation (ASF) under one or more |
| ~ contributor license agreements. See the NOTICE file distributed with |
| ~ this work for additional information regarding copyright ownership. |
| ~ The ASF licenses this file to You 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> |
| |
| <parent> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-starter-parent</artifactId> |
| <version>4.0.3</version> |
| </parent> |
| |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat</artifactId> |
| <packaging>pom</packaging> |
| <version>2.0-SNAPSHOT</version> |
| |
| <url>https://hertzbeat.apache.org/</url> |
| |
| <description> |
| Apache HertzBeat™, a real-time observability system with agentless, performance cluster, prometheus-compatible, |
| custom monitoring and status page building capabilities. |
| </description> |
| |
| <organization> |
| <name>Apache Software Foundation</name> |
| <url>https://www.apache.org</url> |
| </organization> |
| |
| <licenses> |
| <license> |
| <name>The Apache License, Version 2.0</name> |
| <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url> |
| </license> |
| </licenses> |
| |
| <scm> |
| <connection>scm:git:git://github.com/apache/hertzbeat.git</connection> |
| <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/hertzbeat.git</developerConnection> |
| <url>scm:git:git@github.com:apache/hertzbeat.git</url> |
| <tag>HEAD</tag> |
| </scm> |
| |
| <issueManagement> |
| <system>GitHub</system> |
| <url>https://github.com/apache/hertzbeat/issues</url> |
| </issueManagement> |
| |
| <mailingLists> |
| <mailingList> |
| <name>HertzBeat Developer List</name> |
| <post>dev@hertzbeat.apache.org</post> |
| <subscribe>dev-subscribe@hertzbeat.apache.org</subscribe> |
| <unsubscribe>dev-unsubscribe@hertzbeat.apache.org</unsubscribe> |
| </mailingList> |
| <mailingList> |
| <name>HertzBeat Commits List</name> |
| <post>notifications@hertzbeat.apache.org</post> |
| <subscribe>notifications-subscribe@hertzbeat.apache.org</subscribe> |
| <unsubscribe>notifications-unsubscribe@hertzbeat.apache.org</unsubscribe> |
| </mailingList> |
| </mailingLists> |
| |
| <modules> |
| <module>hertzbeat-startup</module> |
| <module>hertzbeat-manager</module> |
| <module>hertzbeat-alerter</module> |
| <module>hertzbeat-common-core</module> |
| <module>hertzbeat-common-spring</module> |
| <module>hertzbeat-collector</module> |
| <module>hertzbeat-warehouse</module> |
| <module>hertzbeat-remoting</module> |
| <module>hertzbeat-push</module> |
| <module>hertzbeat-plugin</module> |
| <module>hertzbeat-grafana</module> |
| <module>hertzbeat-otel</module> |
| <module>hertzbeat-e2e</module> |
| <module>hertzbeat-base</module> |
| <module>hertzbeat-log</module> |
| <module>hertzbeat-ai</module> |
| </modules> |
| |
| <properties> |
| <hzb.version>1.8.0</hzb.version> |
| |
| <java.version>25</java.version> |
| <maven.compiler.source>${java.version}</maven.compiler.source> |
| <maven.compiler.target>${java.version}</maven.compiler.target> |
| <maven-jar-plugin.version>3.2.0</maven-jar-plugin.version> |
| <maven-assembly-plugin.version>3.3.0</maven-assembly-plugin.version> |
| |
| <p3c-pmd.version>2.1.1</p3c-pmd.version> |
| <maven-compiler-plugin.version>3.15.0</maven-compiler-plugin.version> |
| <maven-surefire-plugin.version>3.2.5</maven-surefire-plugin.version> |
| <maven-pmd-plugin.version>3.21.0</maven-pmd-plugin.version> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <!-- hertzbeat related modules --> |
| <hertzbeat.version>2.0-SNAPSHOT</hertzbeat.version> |
| |
| <springdoc.version>2.8.5</springdoc.version> |
| <spring-boot-starter-sureness.version>1.1.0</spring-boot-starter-sureness.version> |
| <javaparser.version>3.26.1</javaparser.version> |
| <jsqlparser.version>5.1</jsqlparser.version> |
| <nekohtml.version>1.9.22</nekohtml.version> |
| <json-path.version>2.9.0</json-path.version> |
| <gson.version>2.10.1</gson.version> |
| <guava.version>32.1.2-jre</guava.version> |
| <protobuf.version>3.25.5</protobuf.version> |
| <caffeine.version>2.9.3</caffeine.version> |
| <httpclient.version>4.5.14</httpclient.version> |
| |
| <lombok.version>1.18.42</lombok.version> |
| <slf4j.version>2.0.9</slf4j.version> |
| <jackson.version>3.1.0</jackson.version> |
| <xml.bind.version>2.3.0</xml.bind.version> |
| <snake.yaml.version>2.2</snake.yaml.version> |
| <okhttp.version>5.3.2</okhttp.version> |
| <kafka-clients.version>3.7.1</kafka-clients.version> |
| <netty.version>4.1.117.Final</netty.version> |
| <mysql.version>8.4.0</mysql.version> |
| <r2dbc-mysql.version>1.4.1</r2dbc-mysql.version> |
| <mssql-jdbc.version>12.10.2.jre11</mssql-jdbc.version> |
| <ojdbc8.version>21.5.0.0</ojdbc8.version> |
| <mongodb-driver.version>4.6.1</mongodb-driver.version> |
| <clickhouse.version>0.4.6</clickhouse.version> |
| <damengc-driver.version>8.1.2.141</damengc-driver.version> |
| <postgresql.version>42.5.5</postgresql.version> |
| <xugu-jdbc.version>12.3.5</xugu-jdbc.version> |
| <h2.version>2.2.224</h2.version> |
| <taos-jdbcdriver.version>3.0.0</taos-jdbcdriver.version> |
| <iotdb-session.version>0.13.3</iotdb-session.version> |
| <questdb.version>9.0.2</questdb.version> |
| <flyway.version>10.11.1</flyway.version> |
| <commons-collections4.version>4.4</commons-collections4.version> |
| <commons-jexl3>3.2.1</commons-jexl3> |
| <commons-net>3.10.0</commons-net> |
| <commons-compress.version>1.27.1</commons-compress.version> |
| <jacoco-maven-plugin.version>0.8.11</jacoco-maven-plugin.version> |
| <spotless.version>2.40.0</spotless.version> |
| |
| <easy-poi.version>4.3.0</easy-poi.version> |
| <poi.version>4.1.2</poi.version> |
| <concurrentlinkedhashmap-lru.version>1.4.2</concurrentlinkedhashmap-lru.version> |
| <sshd-core.version>2.13.1</sshd-core.version> |
| <eddsa.version>0.3.0</eddsa.version> |
| <snmp4j.version>3.6.7</snmp4j.version> |
| <rocketmq-tools.version>4.9.4</rocketmq-tools.version> |
| <dnsjava.version>3.6.2</dnsjava.version> |
| <consul-api.version>1.4.5</consul-api.version> |
| <nacos-client.version>3.1.1</nacos-client.version> |
| <vesoft-client.version>3.6.0</vesoft-client.version> |
| <jutf7.version>1.0.0</jutf7.version> |
| <huawei.sdk.version>3.1.37</huawei.sdk.version> |
| <huawei.obs.version>3.23.5</huawei.obs.version> |
| <zookeeper.version>3.9.3</zookeeper.version> |
| |
| <duckdb.version>1.4.2.0</duckdb.version> |
| <influxdb.version>2.23</influxdb.version> |
| <spring-cloud-starter-openfeign.version>3.0.5</spring-cloud-starter-openfeign.version> |
| <greptimedb.version>0.11.0</greptimedb.version> |
| <arrow.version>18.1.0</arrow.version> |
| <snappy-java.version>1.1.10.7</snappy-java.version> |
| <sshd-sftp.version>2.13.1</sshd-sftp.version> |
| <opentelemetry-starter.version>2.25.0</opentelemetry-starter.version> |
| <opentelemetry-logback.version>2.25.0-alpha</opentelemetry-logback.version> |
| <opentelemetry-proto.version>1.3.1-alpha</opentelemetry-proto.version> |
| <testcontainers.version>2.0.3</testcontainers.version> |
| <argLine></argLine> |
| </properties> |
| |
| <dependencyManagement> |
| <dependencies> |
| <!-- common-core --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-common-core</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- common-spring --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-common-spring</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- base --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-base</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- manager --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-manager</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- ai --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-ai</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- data warehouse --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-warehouse</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- alerter --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-alerter</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- collector --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-collector</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- remoting --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-remoting</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- push --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-push</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- plugin --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-plugin</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- grafana --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-grafana</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- log otel --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-otel</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- log --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-log</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- collector-basic --> |
| <dependency> |
| <groupId>org.apache.hertzbeat</groupId> |
| <artifactId>hertzbeat-collector-collector</artifactId> |
| <version>${hertzbeat.version}</version> |
| </dependency> |
| <!-- spring --> |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-devtools</artifactId> |
| <scope>provided</scope> |
| </dependency> |
| <dependency> |
| <groupId>javax.xml.bind</groupId> |
| <artifactId>jaxb-api</artifactId> |
| <version>${xml.bind.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.springdoc</groupId> |
| <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId> |
| <version>${springdoc.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.yaml</groupId> |
| <artifactId>snakeyaml</artifactId> |
| <version>${snake.yaml.version}</version> |
| </dependency> |
| <!-- kafka --> |
| <dependency> |
| <groupId>org.apache.kafka</groupId> |
| <artifactId>kafka-clients</artifactId> |
| <version>${kafka-clients.version}</version> |
| </dependency> |
| <!-- tool --> |
| <dependency> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| <version>${guava.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.google.code.gson</groupId> |
| <artifactId>gson</artifactId> |
| <version>${gson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.google.protobuf</groupId> |
| <artifactId>protobuf-java</artifactId> |
| <version>${protobuf.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>tools.jackson.core</groupId> |
| <artifactId>jackson-databind</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>tools.jackson.core</groupId> |
| <artifactId>jackson-core</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>tools.jackson.core</groupId> |
| <artifactId>jackson-annotations</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.fasterxml.jackson.core</groupId> |
| <artifactId>jackson-annotations</artifactId> |
| <version>2.21</version> |
| </dependency> |
| <dependency> |
| <groupId>tools.jackson.dataformat</groupId> |
| <artifactId>jackson-dataformat-xml</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>tools.jackson.dataformat</groupId> |
| <artifactId>jackson-dataformat-yaml</artifactId> |
| <version>${jackson.version}</version> |
| </dependency> |
| <!-- <dependency>--> |
| <!-- <groupId>tools.jackson.datatype</groupId>--> |
| <!-- <artifactId>jackson-datatype-jsr310</artifactId>--> |
| <!-- <version>3.0.0-rc1</version>--> |
| <!-- </dependency>--> |
| <!-- commons-net --> |
| <dependency> |
| <groupId>commons-net</groupId> |
| <artifactId>commons-net</artifactId> |
| <version>${commons-net}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.httpcomponents</groupId> |
| <artifactId>httpclient</artifactId> |
| <version>${httpclient.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-jexl3</artifactId> |
| <version>${commons-jexl3}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.github.jsqlparser</groupId> |
| <artifactId>jsqlparser</artifactId> |
| <version>${jsqlparser.version}</version> |
| </dependency> |
| <!-- database migration --> |
| <dependency> |
| <groupId>org.flywaydb</groupId> |
| <artifactId>flyway-core</artifactId> |
| <version>${flyway.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.flywaydb</groupId> |
| <artifactId>flyway-mysql</artifactId> |
| <version>${flyway.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.flywaydb</groupId> |
| <artifactId>flyway-database-postgresql</artifactId> |
| <version>${flyway.version}</version> |
| </dependency> |
| <!-- mysql --> |
| <dependency> |
| <groupId>com.mysql</groupId> |
| <artifactId>mysql-connector-j</artifactId> |
| <version>${mysql.version}</version> |
| </dependency> |
| <!-- sql server --> |
| <dependency> |
| <groupId>com.microsoft.sqlserver</groupId> |
| <artifactId>mssql-jdbc</artifactId> |
| <version>${mssql-jdbc.version}</version> |
| </dependency> |
| <!-- oracle --> |
| <dependency> |
| <groupId>com.oracle.database.jdbc</groupId> |
| <artifactId>ojdbc8</artifactId> |
| <version>${ojdbc8.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.oracle.database.nls</groupId> |
| <artifactId>orai18n</artifactId> |
| <version>${ojdbc8.version}</version> |
| </dependency> |
| <!-- mongodb --> |
| <dependency> |
| <groupId>org.mongodb</groupId> |
| <artifactId>mongodb-driver-sync</artifactId> |
| <version>${mongodb-driver.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.mongodb</groupId> |
| <artifactId>mongodb-driver-core</artifactId> |
| <version>${mongodb-driver.version}</version> |
| </dependency> |
| <!-- rocketmq --> |
| <dependency> |
| <groupId>org.apache.rocketmq</groupId> |
| <artifactId>rocketmq-tools</artifactId> |
| <version>${rocketmq-tools.version}</version> |
| </dependency> |
| <!-- clickhouse --> |
| <dependency> |
| <groupId>com.clickhouse</groupId> |
| <artifactId>clickhouse-jdbc</artifactId> |
| <version>${clickhouse.version}</version> |
| </dependency> |
| <!-- dm --> |
| <dependency> |
| <groupId>com.dameng</groupId> |
| <artifactId>DmJdbcDriver18</artifactId> |
| <version>${damengc-driver.version}</version> |
| </dependency> |
| <!-- postgresql --> |
| <dependency> |
| <groupId>org.postgresql</groupId> |
| <artifactId>postgresql</artifactId> |
| <version>${postgresql.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.xugudb</groupId> |
| <artifactId>xugu-jdbc</artifactId> |
| <version>${xugu-jdbc.version}</version> |
| </dependency> |
| <!-- taos-jdbc driver --> |
| <dependency> |
| <groupId>com.taosdata.jdbc</groupId> |
| <artifactId>taos-jdbcdriver</artifactId> |
| <version>${taos-jdbcdriver.version}</version> |
| </dependency> |
| <!-- IoTDB --> |
| <dependency> |
| <groupId>org.apache.iotdb</groupId> |
| <artifactId>iotdb-session</artifactId> |
| <version>${iotdb-session.version}</version> |
| </dependency> |
| <!-- h2 database --> |
| <dependency> |
| <groupId>com.h2database</groupId> |
| <artifactId>h2</artifactId> |
| <version>${h2.version}</version> |
| <scope>provided</scope> |
| </dependency> |
| <!-- sureness --> |
| <dependency> |
| <groupId>com.usthe.sureness</groupId> |
| <artifactId>spring-boot3-starter-sureness</artifactId> |
| <version>${spring-boot-starter-sureness.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>net.sourceforge.nekohtml</groupId> |
| <artifactId>nekohtml</artifactId> |
| <version>${nekohtml.version}</version> |
| </dependency> |
| <!-- json path parser--> |
| <dependency> |
| <groupId>com.jayway.jsonpath</groupId> |
| <artifactId>json-path</artifactId> |
| <version>${json-path.version}</version> |
| </dependency> |
| <!-- protobuf --> |
| <dependency> |
| <groupId>com.google.protobuf</groupId> |
| <artifactId>protobuf-java-util</artifactId> |
| <version>${protobuf.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <!-- okhttp --> |
| <dependency> |
| <groupId>com.squareup.okhttp3</groupId> |
| <artifactId>okhttp</artifactId> |
| <version>${okhttp.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.squareup.okhttp3</groupId> |
| <artifactId>logging-interceptor</artifactId> |
| <version>${okhttp.version}</version> |
| </dependency> |
| <!-- caffeine--> |
| <dependency> |
| <groupId>com.github.ben-manes.caffeine</groupId> |
| <artifactId>caffeine</artifactId> |
| <!-- The 3.x version supports Java 11 and above, so the 2.x version is still used --> |
| <version>${caffeine.version}</version> |
| </dependency> |
| <!-- Generic collection operations --> |
| <dependency> |
| <groupId>org.apache.commons</groupId> |
| <artifactId>commons-collections4</artifactId> |
| <version>${commons-collections4.version}</version> |
| </dependency> |
| <!-- LOG --> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| <version>${slf4j.version}</version> |
| </dependency> |
| <!-- netty --> |
| <dependency> |
| <groupId>io.netty</groupId> |
| <artifactId>netty-all</artifactId> |
| <version>${netty.version}</version> |
| </dependency> |
| |
| <dependency> |
| <groupId>org.apache.arrow</groupId> |
| <artifactId>arrow-vector</artifactId> |
| <version>${arrow.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.arrow</groupId> |
| <artifactId>arrow-memory-netty</artifactId> |
| <version>${arrow.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.sshd</groupId> |
| <artifactId>sshd-sftp</artifactId> |
| <version>${sshd-sftp.version}</version> |
| </dependency> |
| <!-- OpenTelemetry --> |
| <dependency> |
| <groupId>io.opentelemetry.instrumentation</groupId> |
| <artifactId>opentelemetry-logback-appender-1.0</artifactId> |
| <version>${opentelemetry-logback.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>io.opentelemetry.instrumentation</groupId> |
| <artifactId>opentelemetry-instrumentation-bom</artifactId> |
| <version>${opentelemetry-starter.version}</version> |
| <type>pom</type> |
| <scope>import</scope> |
| </dependency> |
| <dependency> |
| <groupId>io.opentelemetry.proto</groupId> |
| <artifactId>opentelemetry-proto</artifactId> |
| <version>${opentelemetry-proto.version}</version> |
| <exclusions> |
| <exclusion> |
| <groupId>com.google.protobuf</groupId> |
| <artifactId>protobuf-java</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| <version>${slf4j.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.projectlombok</groupId> |
| <artifactId>lombok</artifactId> |
| <version>${lombok.version}</version> |
| <scope>provided</scope> |
| </dependency> |
| <!-- Test dependencies --> |
| <dependency> |
| <groupId>org.springframework.boot</groupId> |
| <artifactId>spring-boot-starter-test</artifactId> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>${maven-compiler-plugin.version}</version> |
| <configuration> |
| <!-- JDK 23+ no longer auto-runs classpath annotation processors. --> |
| <proc>full</proc> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>${maven-surefire-plugin.version}</version> |
| <configuration> |
| <argLine> |
| ${argLine} --add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED |
| </argLine> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>3.5.0</version> |
| <executions> |
| <execution> |
| <id>require-java-25</id> |
| <phase>validate</phase> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <requireJavaVersion> |
| <version>[25,)</version> |
| <message>Apache HertzBeat now requires JDK 25 or newer. Please switch JAVA_HOME before building or testing.</message> |
| </requireJavaVersion> |
| </rules> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <!-- java code style check --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>3.3.0</version> |
| <configuration> |
| <configLocation>./script/checkstyle/checkstyle.xml</configLocation> |
| <suppressionsLocation>./script/checkstyle/suppressions.xml</suppressionsLocation> |
| <includeTestSourceDirectory>true</includeTestSourceDirectory> |
| <consoleOutput>true</consoleOutput> |
| <failsOnError>true</failsOnError> |
| <linkXRef>false</linkXRef> |
| </configuration> |
| <executions> |
| <execution> |
| <id>validate</id> |
| <phase>validate</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.jacoco</groupId> |
| <artifactId>jacoco-maven-plugin</artifactId> |
| <version>${jacoco-maven-plugin.version}</version> |
| <configuration> |
| <excludes> |
| <exclude>net/sf/jsqlparser/parser/**</exclude> |
| </excludes> |
| </configuration> |
| <executions> |
| <execution> |
| <id>prepare-agent</id> |
| <phase>initialize</phase> |
| <goals> |
| <goal>prepare-agent</goal> |
| </goals> |
| </execution> |
| |
| <execution> |
| <id>report</id> |
| <phase>verify</phase> |
| <goals> |
| <goal>report</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </project> |