This is an automated email from the ASF dual-hosted git repository.
rgoers pushed a commit to branch spring-boot4
in repository https://gitbox.apache.org/repos/asf/logging-flume.git
The following commit(s) were added to refs/heads/spring-boot4 by this push:
new 5ca1c953 Enhancements for Spring Boot
5ca1c953 is described below
commit 5ca1c953bbb30e061f64faf76204364269d4f1cb
Author: Ralph Goers <[email protected]>
AuthorDate: Thu Jun 25 07:56:57 2026 -0700
Enhancements for Spring Boot
---
flume-bom/pom.xml | 8 +-
flume-ng-channels/flume-file-channel/pom.xml | 1 -
.../org/apache/flume/conf/FlumeConfiguration.java | 2 +
.../org/apache/flume/conf/channel/ChannelType.java | 14 +
flume-ng-core/pom.xml | 1 -
flume-ng-node/pom.xml | 17 -
flume-parent/pom.xml | 427 +----------------
flume-third-party/pom.xml | 527 +++++++++++++++++++++
pom.xml | 1 +
9 files changed, 559 insertions(+), 439 deletions(-)
diff --git a/flume-bom/pom.xml b/flume-bom/pom.xml
index 67ce79ed..67f840d2 100644
--- a/flume-bom/pom.xml
+++ b/flume-bom/pom.xml
@@ -38,11 +38,11 @@
<flume-jms.version>2.0.0-SNAPSHOT</flume-jms.version>
<flume-kafka.version>2.0.0-SNAPSHOT</flume-kafka.version>
<flume-scribe.version>2.0.0-SNAPSHOT</flume-scribe.version>
- <flume-spring-boot.version>2.0.0-SNAPSHOT</flume-spring-boot.version>
+ <flume-spring-boot.version>2.1.0-SNAPSHOT</flume-spring-boot.version>
<flume-taildir.version>2.0.0-SNAPSHOT</flume-taildir.version>
<flume-tools.version>2.0.0-SNAPSHOT</flume-tools.version>
<flume-legacy.version>2.0.0-SNAPSHOT</flume-legacy.version>
- <flume-morphline.version>2.0.0-SNAPSHOT</flume-morphline.version>
+ <flume-rpc.version>2.0.0-SNAPSHOT</flume-rpc.version>
</properties>
<dependencyManagement>
@@ -105,12 +105,12 @@
<dependency>
<groupId>org.apache.flume</groupId>
<artifactId>flume-rpc-avro</artifactId>
- <version>${project.version}</version>
+ <version>${flume-rpc.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flume</groupId>
<artifactId>flume-rpc-thrift</artifactId>
- <version>${project.version}</version>
+ <version>${flume-rpc.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flume</groupId>
diff --git a/flume-ng-channels/flume-file-channel/pom.xml
b/flume-ng-channels/flume-file-channel/pom.xml
index d4052e92..9e7e219c 100644
--- a/flume-ng-channels/flume-file-channel/pom.xml
+++ b/flume-ng-channels/flume-file-channel/pom.xml
@@ -121,7 +121,6 @@
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
- <version>${jsr305.version}</version>
<scope>provided</scope>
</dependency>
diff --git
a/flume-ng-configuration/src/main/java/org/apache/flume/conf/FlumeConfiguration.java
b/flume-ng-configuration/src/main/java/org/apache/flume/conf/FlumeConfiguration.java
index 1fd692a0..a7bc35fe 100644
---
a/flume-ng-configuration/src/main/java/org/apache/flume/conf/FlumeConfiguration.java
+++
b/flume-ng-configuration/src/main/java/org/apache/flume/conf/FlumeConfiguration.java
@@ -69,6 +69,7 @@ import org.apache.flume.conf.source.SourceType;
import org.apache.flume.configfilter.ConfigFilter;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.internal.annotation.SuppressFBWarnings;
/**
* <p>
@@ -83,6 +84,7 @@ import org.apache.logging.log4j.Logger;
* @see org.apache.flume.node.ConfigurationProvider
*
*/
+@SuppressFBWarnings(value = {"EI_EXPOSE_REP"})
public class FlumeConfiguration {
private static final Logger logger = LogManager.getLogger();
diff --git
a/flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/ChannelType.java
b/flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/ChannelType.java
index e782472c..315c24c5 100644
---
a/flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/ChannelType.java
+++
b/flume-ng-configuration/src/main/java/org/apache/flume/conf/channel/ChannelType.java
@@ -46,6 +46,11 @@ public enum ChannelType implements ComponentWithClassName {
*/
JDBC("org.apache.flume.channel.jdbc.JdbcChannel"),
+ /**
+ * Kafka channel.
+ */
+ KAFKA("org.apache.flume.channel.kafka.KafkaChannel"),
+
/**
* Spillable Memory channel
*
@@ -59,6 +64,15 @@ public enum ChannelType implements ComponentWithClassName {
this.channelClassName = channelClassName;
}
+ private static ChannelType getChannelTypeByName(String type) {
+ for (ChannelType channelType : ChannelType.values()) {
+ if (channelType.channelClassName.equals(type)) {
+ return channelType;
+ }
+ }
+ return null;
+ }
+
@Deprecated
public String getChannelClassName() {
return channelClassName;
diff --git a/flume-ng-core/pom.xml b/flume-ng-core/pom.xml
index c6429bba..7bb54738 100644
--- a/flume-ng-core/pom.xml
+++ b/flume-ng-core/pom.xml
@@ -89,7 +89,6 @@
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
- <version>${jsr305.version}</version>
<scope>provided</scope>
</dependency>
diff --git a/flume-ng-node/pom.xml b/flume-ng-node/pom.xml
index c746cc4f..8ac7986b 100644
--- a/flume-ng-node/pom.xml
+++ b/flume-ng-node/pom.xml
@@ -54,22 +54,6 @@
<artifactId>flume-ng-core</artifactId>
</dependency>
- <!--
- <dependency>
- <groupId>org.apache.flume</groupId>
- <artifactId>flume-hdfs-sink</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.apache.flume.flume-ng-sinks</groupId>
- <artifactId>flume-irc-sink</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.apache.flume.flume-ng-channels</groupId>
- <artifactId>flume-jdbc-channel</artifactId>
- </dependency>-->
-
<dependency>
<groupId>org.apache.flume.flume-ng-channels</groupId>
<artifactId>flume-file-channel</artifactId>
@@ -120,7 +104,6 @@
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
- <version>${jsr305.version}</version>
<scope>provided</scope>
</dependency>
diff --git a/flume-parent/pom.xml b/flume-parent/pom.xml
index 57bc9d9c..ddebdd36 100644
--- a/flume-parent/pom.xml
+++ b/flume-parent/pom.xml
@@ -209,6 +209,7 @@
</ciManagement>
<properties>
+ <flume-project.version>2.0.0-SNAPSHOT</flume-project.version>
<!-- Update for year of distribution. Should be set by the
maven-release-plugin at release time. -->
<project.build.outputTimestamp>2022-01-02T00:00:00Z</project.build.outputTimestamp>
<!-- Set default encoding to UTF-8 to remove maven complaints -->
@@ -227,34 +228,10 @@
<stagingDirectory>${project.basedir}/target/docs</stagingDirectory>
<bundle-plugin.version>2.3.7</bundle-plugin.version>
- <commons-cli.version>1.5.0</commons-cli.version>
- <commons-codec.version>1.22.0</commons-codec.version>
- <commons-collections.version>3.2.2</commons-collections.version>
- <commons-compress.version>1.28.0</commons-compress.version>
- <commons-io.version>2.22.0</commons-io.version>
- <commons-lang.version>3.20.0</commons-lang.version>
- <commons-logging.version>1.4.0</commons-logging.version>
- <commons-text.version>1.15.0</commons-text.version>
<curator.version>5.9.0</curator.version>
- <derby.version>10.17.1.0</derby.version>
- <jackson-annotations.version>2.22</jackson-annotations.version>
- <fasterxml.jackson.version>2.22.0</fasterxml.jackson.version>
-
<fasterxml.jackson.databind.version>2.22.0</fasterxml.jackson.databind.version>
<fest-reflect.version>1.4.1</fest-reflect.version>
- <gson.version>2.14.0</gson.version>
- <guava.version>33.4.8-jre</guava.version>
<hadoop.version>3.5.0</hadoop.version>
- <httpcore.version>4.4.15</httpcore.version>
- <bouncycastle.version>1.84</bouncycastle.version>
- <httpclient.version>4.5.13</httpclient.version>
- <irclib.version>1.10</irclib.version>
- <jakarta-servlet.version>6.1.0</jakarta-servlet.version>
- <jetty.version>12.1.9</jetty.version>
<junit.version>4.13.2</junit.version>
- <jsr305.version>3.0.2</jsr305.version>
- <log4j.version>2.26.0</log4j.version>
- <mapdb.version>0.9.9</mapdb.version>
- <mina.version>2.2.8</mina.version>
<mockito.version>5.18.0</mockito.version>
<mvn-antrun-plugin.version>1.8</mvn-antrun-plugin.version>
<!-- Do not upgrade the assumbly plugin version until MASSEMBLY-941 is
fixed -->
@@ -272,31 +249,23 @@
<spotbugs.version>4.9.3</spotbugs.version>
<mvn-spotbugs-plugin.version>${spotbugs.version}.0</mvn-spotbugs-plugin.version>
<mvn-surefire-plugin.version>3.5.5</mvn-surefire-plugin.version>
- <netty-all.version>4.2.15.Final</netty-all.version>
<external.protobuf.version>4.35.0</external.protobuf.version>
<protobuf.plugin.version>0.6.1</protobuf.plugin.version>
- <prometheus.version>1.7.0</prometheus.version>
<rat.version>0.12</rat.version>
- <slf4j.version>2.0.17</slf4j.version>
- <snappy-java.version>1.1.10.8</snappy-java.version>
- <spotbugs-annotations.version>4.9.3</spotbugs-annotations.version>
- <system-rules.version>1.19.0</system-rules.version>
<wiremock.version>1.53</wiremock.version>
- <zlib.version>1.1.3</zlib.version>
- <zookeeper.version>3.8.6</zookeeper.version>
<os.maven.version>1.7.1</os.maven.version>
<redirectTestOutput>true</redirectTestOutput>
<spotless-maven-plugin.version>3.4.0</spotless-maven-plugin.version>
+ <system-rules.version>1.19.0</system-rules.version>
<palantir-java-format.version>2.90.0</palantir-java-format.version>
</properties>
<dependencyManagement>
<dependencies>
- <!-- Dependencies: build -->
<dependency>
- <groupId>org.bouncycastle</groupId>
- <artifactId>bc-jdk18on-bom</artifactId>
- <version>${bouncycastle.version}</version>
+ <groupId>org.apache.flume</groupId>
+ <artifactId>flume-third-party-dependencies</artifactId>
+ <version>${flume-project.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
@@ -328,12 +297,6 @@
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.apache.flume</groupId>
- <artifactId>flume-rpc-avro</artifactId>
- <version>${project.version}</version>
- </dependency>
-
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-minikdc</artifactId>
@@ -364,185 +327,11 @@
<scope>test</scope>
</dependency>
- <!-- Dependencies: compile -->
-
- <dependency>
- <groupId>commons-cli</groupId>
- <artifactId>commons-cli</artifactId>
- <version>${commons-cli.version}</version>
- </dependency>
-
- <!-- Pin commons-logging to a version with native Log4j API support -->
- <dependency>
- <groupId>commons-logging</groupId>
- <artifactId>commons-logging</artifactId>
- <version>${commons-logging.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>commons-lang3</artifactId>
- <version>${commons-lang.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>commons-text</artifactId>
- <version>${commons-text.version}</version>
- </dependency>
-
- <dependency>
- <groupId>com.google.guava</groupId>
- <artifactId>guava</artifactId>
- <version>${guava.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.logging.log4j</groupId>
- <artifactId>log4j-bom</artifactId>
- <version>${log4j.version}</version>
- <type>pom</type>
- <scope>import</scope>
- </dependency>
-
- <!-- Pin SLF4J to 2.x so transitive deps cannot downgrade it to 1.x -->
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-bom</artifactId>
- <version>${slf4j.version}</version>
- <type>pom</type>
- <scope>import</scope>
- </dependency>
-
- <dependency>
- <groupId>com.google.protobuf</groupId>
- <artifactId>protobuf-java</artifactId>
- <version>${external.protobuf.version}</version>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>jakarta.servlet</groupId>
- <artifactId>jakarta.servlet-api</artifactId>
- <!-- Use 5.0.0 for Jetty 11 / EE9. Use 6.0.0 or 6.1.0 for Jetty 12
(EE10) -->
- <version>${jakarta-servlet.version}</version>
- <scope>provided</scope>
- </dependency>
-
- <dependency>
- <groupId>org.eclipse.jetty.ee11</groupId>
- <artifactId>jetty-ee11-servlet</artifactId>
- <version>${jetty.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.eclipse.jetty</groupId>
- <artifactId>jetty-security</artifactId>
- <version>${jetty.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.eclipse.jetty</groupId>
- <artifactId>jetty-util</artifactId>
- <version>${jetty.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.eclipse.jetty</groupId>
- <artifactId>jetty-server</artifactId>
- <version>${jetty.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.eclipse.jetty</groupId>
- <artifactId>jetty-jmx</artifactId>
- <version>${jetty.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.httpcomponents</groupId>
- <artifactId>httpclient</artifactId>
- <version>${httpclient.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.httpcomponents</groupId>
- <artifactId>httpcore</artifactId>
- <version>${httpcore.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.mapdb</groupId>
- <artifactId>mapdb</artifactId>
- <version>${mapdb.version}</version>
- </dependency>
-
- <!-- Gson: Java to Json conversion -->
- <dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- <version>${gson.version}</version>
- </dependency>
-
- <dependency>
- <groupId>commons-codec</groupId>
- <artifactId>commons-codec</artifactId>
- <version>${commons-codec.version}</version>
- </dependency>
-
- <dependency>
- <groupId>commons-io</groupId>
- <artifactId>commons-io</artifactId>
- <version>${commons-io.version}</version>
- </dependency>
-
- <dependency>
- <groupId>commons-collections</groupId>
- <artifactId>commons-collections</artifactId>
- <version>${commons-collections.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.derby</groupId>
- <artifactId>derby</artifactId>
- <version>${derby.version}</version>
- </dependency>
-
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-annotations</artifactId>
- <version>${jackson-annotations.version}</version>
- </dependency>
-
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-core</artifactId>
- <version>${fasterxml.jackson.version}</version>
- </dependency>
-
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-databind</artifactId>
- <version>${fasterxml.jackson.databind.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.schwering</groupId>
- <artifactId>irclib</artifactId>
- <version>${irclib.version}</version>
- </dependency>
-
- <dependency>
- <groupId>com.jcraft</groupId>
- <artifactId>jzlib</artifactId>
- <version>${zlib.version}</version>
- </dependency>
-
<!-- internal module dependencies -->
<dependency>
<groupId>org.apache.flume</groupId>
<artifactId>flume-dependencies</artifactId>
- <version>${project.version}</version>
+ <version>${flume-project.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
@@ -550,66 +339,17 @@
<dependency>
<groupId>org.apache.flume</groupId>
<artifactId>build-support</artifactId>
- <version>${project.version}</version>
+ <version>${flume-project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flume</groupId>
<artifactId>flume-ng-sdk</artifactId>
- <version>${project.version}</version>
+ <version>${flume-project.version}</version>
<classifier>tests</classifier>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.apache.commons</groupId>
- <artifactId>commons-compress</artifactId>
- <version>${commons-compress.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.mina</groupId>
- <artifactId>mina-core</artifactId>
- <version>${mina.version}</version>
- </dependency>
-
- <dependency>
- <groupId>io.netty</groupId>
- <artifactId>netty-all</artifactId>
- <version>${netty-all.version}</version>
- </dependency>
-
- <dependency>
- <groupId>io.prometheus</groupId>
- <artifactId>prometheus-metrics-core</artifactId>
- <version>${prometheus.version}</version>
- </dependency>
-
- <dependency>
- <groupId>io.prometheus</groupId>
- <artifactId>prometheus-metrics-exporter-servlet-jakarta</artifactId>
- <version>${prometheus.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.xerial.snappy</groupId>
- <artifactId>snappy-java</artifactId>
- <version>${snappy-java.version}</version>
- </dependency>
-
- <!-- Dependency for Zk provider -->
- <dependency>
- <groupId>org.apache.curator</groupId>
- <artifactId>curator-framework</artifactId>
- <version>${curator.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.curator</groupId>
- <artifactId>curator-recipes</artifactId>
- <version>${curator.version}</version>
- </dependency>
-
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-test</artifactId>
@@ -617,64 +357,6 @@
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.apache.hadoop</groupId>
- <artifactId>hadoop-common</artifactId>
- <version>${hadoop.version}</version>
- <optional>true</optional>
- <exclusions>
- <exclusion>
- <groupId>tomcat</groupId>
- <artifactId>jasper-compiler</artifactId>
- </exclusion>
- <exclusion>
- <groupId>tomcat</groupId>
- <artifactId>jasper-runtime</artifactId>
- </exclusion>
- <exclusion>
- <groupId>ch.qos.reload4j</groupId>
- <artifactId>reload4j</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-reload4j</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.apache.hadoop</groupId>
- <artifactId>hadoop-hdfs</artifactId>
- <version>${hadoop.version}</version>
- <exclusions>
- <exclusion>
- <groupId>tomcat</groupId>
- <artifactId>jasper-compiler</artifactId>
- </exclusion>
- <exclusion>
- <groupId>tomcat</groupId>
- <artifactId>jasper-runtime</artifactId>
- </exclusion>
- <exclusion>
- <groupId>ch.qos.reload4j</groupId>
- <artifactId>reload4j</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.apache.hadoop</groupId>
- <artifactId>hadoop-hdfs-client</artifactId>
- <version>${hadoop.version}</version>
- <exclusions>
- <exclusion>
- <groupId>tomcat</groupId>
- <artifactId>jasper-compiler</artifactId>
- </exclusion>
- <exclusion>
- <groupId>tomcat</groupId>
- <artifactId>jasper-runtime</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-minicluster</artifactId>
@@ -699,31 +381,6 @@
</exclusion>
</exclusions>
</dependency>
- <dependency>
- <groupId>org.apache.hadoop</groupId>
- <artifactId>hadoop-client</artifactId>
- <version>${hadoop.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.hadoop</groupId>
- <artifactId>hadoop-annotations</artifactId>
- <version>${hadoop.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.hadoop</groupId>
- <artifactId>hadoop-auth</artifactId>
- <version>${hadoop.version}</version>
- <exclusions>
- <exclusion>
- <groupId>ch.qos.reload4j</groupId>
- <artifactId>reload4j</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-reload4j</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-mapreduce-client-core</artifactId>
@@ -740,37 +397,6 @@
</exclusion>
</exclusions>
</dependency>
- <dependency>
- <groupId>org.apache.hadoop</groupId>
- <artifactId>hadoop-distcp</artifactId>
- <version>${hadoop.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.zookeeper</groupId>
- <artifactId>zookeeper</artifactId>
- <version>${zookeeper.version}</version>
- <exclusions>
- <exclusion>
- <groupId>ch.qos.logback</groupId>
- <artifactId>*</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <!-- For ThreadSafe and GuardedBy annotations -->
- <dependency>
- <groupId>com.google.code.findbugs</groupId>
- <artifactId>jsr305</artifactId>
- <version>${jsr305.version}</version>
- </dependency>
-
- <dependency>
- <groupId>com.github.spotbugs</groupId>
- <artifactId>spotbugs-annotations</artifactId>
- <version>${spotbugs-annotations.version}</version>
- </dependency>
-
<dependency>
<groupId>org.mock-server</groupId>
<artifactId>mockserver-netty</artifactId>
@@ -831,10 +457,10 @@
<archive>
<manifestEntries>
<Specification-Title>${project.name}</Specification-Title>
-
<Specification-Version>${project.version}</Specification-Version>
+
<Specification-Version>${flume-project.version}</Specification-Version>
<Specification-Vendor>${project.organization.name}</Specification-Vendor>
<Implementation-Title>${project.name}</Implementation-Title>
-
<Implementation-Version>${project.version}</Implementation-Version>
+
<Implementation-Version>${flume-project.version}</Implementation-Version>
<Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
<Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
<X-Compile-Source-JDK>${maven.compiler.source}</X-Compile-Source-JDK>
@@ -1202,38 +828,6 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
</plugin>
- <!-- Enable Parent POM flattening -->
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>flatten-maven-plugin</artifactId>
- <version>1.7.3</version>
- <executions>
- <execution>
- <id>flatten-bom</id>
- <goals>
- <goal>flatten</goal>
- </goals>
- <phase>process-resources</phase>
- <inherited>false</inherited>
- <configuration>
- <updatePomFile>true</updatePomFile>
- <flattenMode>bom</flattenMode>
- <pomElements>
- <dependencyManagement>resolve</dependencyManagement>
- <pluginManagement>resolve</pluginManagement>
- <properties>flatten</properties>
- </pomElements>
- </configuration>
- </execution>
- <!-- ensure proper cleanup -->
- <execution>
- <id>flatten.clean</id>
- <goals>
- <goal>clean</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
<!-- Ban logging implementations (not logging APIs) that dependencies
incorrectly add as compile dependencies -->
@@ -1270,6 +864,7 @@
<include>org.slf4j:slf4j-api</include>
<!-- As a test dependency -->
<include>org.apache.logging.log4j:log4j-core:*:jar:test</include>
+
<include>org.apache.logging.log4j:log4j-jcl:*:jar:test</include>
<include>org.apache.logging.log4j:log4j-slf4j2-impl:*:jar:test</include>
</includes>
</bannedDependencies>
diff --git a/flume-third-party/pom.xml b/flume-third-party/pom.xml
new file mode 100644
index 00000000..c9a82e66
--- /dev/null
+++ b/flume-third-party/pom.xml
@@ -0,0 +1,527 @@
+<?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.apache.flume</groupId>
+ <artifactId>flume-project</artifactId>
+ <version>2.0.0-SNAPSHOT</version>
+ <relativePath />
+ </parent>
+ <groupId>org.apache.flume</groupId>
+ <artifactId>flume-third-party-dependencies</artifactId>
+ <packaging>pom</packaging>
+
+ <name>Apache Flume Third Party Dependencies</name>
+
+ <inceptionYear>2009</inceptionYear>
+
+ <organization>
+ <name>Apache Software Foundation</name>
+ <url>http://www.apache.org</url>
+ </organization>
+
+ <licenses>
+ <license>
+ <name>The Apache Software License, Version 2.0</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ </license>
+ </licenses>
+
+ <scm>
+
<connection>scm:git:http://git-wip-us.apache.org/repos/asf/flume.git</connection>
+
<developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/flume.git</developerConnection>
+
<url>https://git-wip-us.apache.org/repos/asf?p=flume.git;a=tree;h=refs/heads/trunk;hb=trunk</url>
+ </scm>
+
+ <properties>
+ <flume-project.version>2.0.0-SNAPSHOT</flume-project.version>
+ <commons-cli.version>1.5.0</commons-cli.version>
+ <commons-codec.version>1.22.0</commons-codec.version>
+ <commons-collections.version>3.2.2</commons-collections.version>
+ <commons-compress.version>1.28.0</commons-compress.version>
+ <commons-io.version>2.22.0</commons-io.version>
+ <commons-lang.version>3.20.0</commons-lang.version>
+ <commons-logging.version>1.4.0</commons-logging.version>
+ <commons-text.version>1.15.0</commons-text.version>
+ <curator.version>5.9.0</curator.version>
+ <derby.version>10.17.1.0</derby.version>
+ <jackson-annotations.version>2.22</jackson-annotations.version>
+ <fasterxml.jackson.version>2.22.0</fasterxml.jackson.version>
+
<fasterxml.jackson.databind.version>2.22.0</fasterxml.jackson.databind.version>
+ <gson.version>2.14.0</gson.version>
+ <guava.version>33.4.8-jre</guava.version>
+ <hadoop.version>3.5.0</hadoop.version>
+ <httpcore.version>4.4.15</httpcore.version>
+ <bouncycastle.version>1.84</bouncycastle.version>
+ <httpclient.version>4.5.13</httpclient.version>
+ <irclib.version>1.10</irclib.version>
+ <jakarta-servlet.version>6.1.0</jakarta-servlet.version>
+ <jetty.version>12.1.9</jetty.version>
+ <jsr305.version>3.0.2</jsr305.version>
+ <log4j.version>2.26.0</log4j.version>
+ <mapdb.version>0.9.9</mapdb.version>
+ <mina.version>2.2.8</mina.version>
+ <spotbugs.version>4.9.3</spotbugs.version>
+ <netty-all.version>4.2.15.Final</netty-all.version>
+ <external.protobuf.version>4.35.0</external.protobuf.version>
+ <prometheus.version>1.7.0</prometheus.version>
+ <slf4j.version>2.0.17</slf4j.version>
+ <snappy-java.version>1.1.10.8</snappy-java.version>
+ <spotbugs-annotations.version>4.9.3</spotbugs-annotations.version>
+ <system-rules.version>1.19.0</system-rules.version>
+ <zlib.version>1.1.3</zlib.version>
+ <zookeeper.version>3.8.6</zookeeper.version>
+ <os.maven.version>1.7.1</os.maven.version>
+ </properties>
+
+ <dependencyManagement>
+ <dependencies>
+ <!-- Dependencies: build -->
+ <dependency>
+ <groupId>org.bouncycastle</groupId>
+ <artifactId>bc-jdk18on-bom</artifactId>
+ <version>${bouncycastle.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+ <!-- Dependencies: compile -->
+
+ <dependency>
+ <groupId>commons-cli</groupId>
+ <artifactId>commons-cli</artifactId>
+ <version>${commons-cli.version}</version>
+ </dependency>
+
+ <!-- Pin commons-logging to a version with native Log4j API support -->
+ <dependency>
+ <groupId>commons-logging</groupId>
+ <artifactId>commons-logging</artifactId>
+ <version>${commons-logging.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-lang3</artifactId>
+ <version>${commons-lang.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-text</artifactId>
+ <version>${commons-text.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <version>${guava.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-bom</artifactId>
+ <version>${log4j.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+ <!-- Pin SLF4J to 2.x so transitive deps cannot downgrade it to 1.x -->
+ <dependency>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-bom</artifactId>
+ <version>${slf4j.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>com.google.protobuf</groupId>
+ <artifactId>protobuf-java</artifactId>
+ <version>${external.protobuf.version}</version>
+ <scope>compile</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>jakarta.servlet</groupId>
+ <artifactId>jakarta.servlet-api</artifactId>
+ <!-- Use 5.0.0 for Jetty 11 / EE9. Use 6.0.0 or 6.1.0 for Jetty 12
(EE10) -->
+ <version>${jakarta-servlet.version}</version>
+ <scope>provided</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.jetty.ee11</groupId>
+ <artifactId>jetty-ee11-servlet</artifactId>
+ <version>${jetty.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-security</artifactId>
+ <version>${jetty.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-util</artifactId>
+ <version>${jetty.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-server</artifactId>
+ <version>${jetty.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.eclipse.jetty</groupId>
+ <artifactId>jetty-jmx</artifactId>
+ <version>${jetty.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.httpcomponents</groupId>
+ <artifactId>httpclient</artifactId>
+ <version>${httpclient.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.httpcomponents</groupId>
+ <artifactId>httpcore</artifactId>
+ <version>${httpcore.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.mapdb</groupId>
+ <artifactId>mapdb</artifactId>
+ <version>${mapdb.version}</version>
+ </dependency>
+
+ <!-- Gson: Java to Json conversion -->
+ <dependency>
+ <groupId>com.google.code.gson</groupId>
+ <artifactId>gson</artifactId>
+ <version>${gson.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>commons-codec</groupId>
+ <artifactId>commons-codec</artifactId>
+ <version>${commons-codec.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>commons-io</groupId>
+ <artifactId>commons-io</artifactId>
+ <version>${commons-io.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>commons-collections</groupId>
+ <artifactId>commons-collections</artifactId>
+ <version>${commons-collections.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.derby</groupId>
+ <artifactId>derby</artifactId>
+ <version>${derby.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-annotations</artifactId>
+ <version>${jackson-annotations.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-core</artifactId>
+ <version>${fasterxml.jackson.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>com.fasterxml.jackson.core</groupId>
+ <artifactId>jackson-databind</artifactId>
+ <version>${fasterxml.jackson.databind.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.schwering</groupId>
+ <artifactId>irclib</artifactId>
+ <version>${irclib.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>com.jcraft</groupId>
+ <artifactId>jzlib</artifactId>
+ <version>${zlib.version}</version>
+ </dependency>
+
+ <!-- internal module dependencies -->
+ <dependency>
+ <groupId>org.apache.flume</groupId>
+ <artifactId>flume-dependencies</artifactId>
+ <version>${flume-project.version}</version>
+ <type>pom</type>
+ <scope>import</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.flume</groupId>
+ <artifactId>build-support</artifactId>
+ <version>${flume-project.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-compress</artifactId>
+ <version>${commons-compress.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.mina</groupId>
+ <artifactId>mina-core</artifactId>
+ <version>${mina.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>io.netty</groupId>
+ <artifactId>netty-all</artifactId>
+ <version>${netty-all.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>io.prometheus</groupId>
+ <artifactId>prometheus-metrics-core</artifactId>
+ <version>${prometheus.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>io.prometheus</groupId>
+ <artifactId>prometheus-metrics-exporter-servlet-jakarta</artifactId>
+ <version>${prometheus.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.xerial.snappy</groupId>
+ <artifactId>snappy-java</artifactId>
+ <version>${snappy-java.version}</version>
+ </dependency>
+
+ <!-- Dependency for Zk provider -->
+ <dependency>
+ <groupId>org.apache.curator</groupId>
+ <artifactId>curator-framework</artifactId>
+ <version>${curator.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.curator</groupId>
+ <artifactId>curator-recipes</artifactId>
+ <version>${curator.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.curator</groupId>
+ <artifactId>curator-test</artifactId>
+ <version>${curator.version}</version>
+ <scope>test</scope>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-common</artifactId>
+ <version>${hadoop.version}</version>
+ <optional>true</optional>
+ <exclusions>
+ <exclusion>
+ <groupId>tomcat</groupId>
+ <artifactId>jasper-compiler</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>tomcat</groupId>
+ <artifactId>jasper-runtime</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>ch.qos.reload4j</groupId>
+ <artifactId>reload4j</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-reload4j</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-hdfs</artifactId>
+ <version>${hadoop.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>tomcat</groupId>
+ <artifactId>jasper-compiler</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>tomcat</groupId>
+ <artifactId>jasper-runtime</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>ch.qos.reload4j</groupId>
+ <artifactId>reload4j</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-hdfs-client</artifactId>
+ <version>${hadoop.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>tomcat</groupId>
+ <artifactId>jasper-compiler</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>tomcat</groupId>
+ <artifactId>jasper-runtime</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-minicluster</artifactId>
+ <version>${hadoop.version}</version>
+ <scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>tomcat</groupId>
+ <artifactId>jasper-compiler</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>tomcat</groupId>
+ <artifactId>jasper-runtime</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>ch.qos.reload4j</groupId>
+ <artifactId>reload4j</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-reload4j</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-client</artifactId>
+ <version>${hadoop.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-annotations</artifactId>
+ <version>${hadoop.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-auth</artifactId>
+ <version>${hadoop.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ch.qos.reload4j</groupId>
+ <artifactId>reload4j</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>slf4j-reload4j</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.hadoop</groupId>
+ <artifactId>hadoop-distcp</artifactId>
+ <version>${hadoop.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>org.apache.zookeeper</groupId>
+ <artifactId>zookeeper</artifactId>
+ <version>${zookeeper.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ch.qos.logback</groupId>
+ <artifactId>*</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+
+ <!-- For ThreadSafe and GuardedBy annotations -->
+ <dependency>
+ <groupId>com.google.code.findbugs</groupId>
+ <artifactId>jsr305</artifactId>
+ <version>${jsr305.version}</version>
+ </dependency>
+
+ <dependency>
+ <groupId>com.github.spotbugs</groupId>
+ <artifactId>spotbugs-annotations</artifactId>
+ <version>${spotbugs-annotations.version}</version>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
+
+ <build>
+ <plugins>
+
+ <!-- Enable BOM flattening -->
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>flatten-maven-plugin</artifactId>
+ <version>1.7.3</version>
+ <executions>
+ <execution>
+ <id>flatten-bom</id>
+ <goals>
+ <goal>flatten</goal>
+ </goals>
+ <phase>process-resources</phase>
+ <inherited>false</inherited>
+ <configuration>
+ <updatePomFile>true</updatePomFile>
+ <flattenMode>bom</flattenMode>
+ <pomElements>
+ <dependencyManagement>resolve</dependencyManagement>
+ <properties>flatten</properties>
+ </pomElements>
+ </configuration>
+ </execution>
+ <!-- ensure proper cleanup -->
+ <execution>
+ <id>flatten.clean</id>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/pom.xml b/pom.xml
index c13d2727..1c2e2ca7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -33,6 +33,7 @@
<modules>
<module>flume-bom</module>
+ <module>flume-third-party</module>
<module>flume-parent</module>
<module>flume-ng-core</module>
<module>flume-ng-configuration</module>