From 67bff043203cbf57fe265f94ebcf8591124e9966 Mon Sep 17 00:00:00 2001 From: Navneet Verma Date: Tue, 5 Sep 2023 22:24:24 -0700 Subject: [PATCH] Resolving apache commons dependency forcefully to make sure that there is no jarhell Signed-off-by: Navneet Verma --- build.gradle | 8 +++++++- .../neuralsearch/processor/TextEmbeddingProcessor.java | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index 0961eb890..2ed239522 100644 --- a/build.gradle +++ b/build.gradle @@ -144,7 +144,7 @@ dependencies { zipArchive group: 'org.opensearch.plugin', name:'opensearch-ml-plugin', version: "${opensearch_build}" compileOnly fileTree(dir: knnJarDirectory, include: '*.jar') api group: 'org.opensearch', name:'opensearch-ml-client', version: "${opensearch_build}" - implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.10' + compileOnly group: 'org.apache.commons', name: 'commons-lang3', version: '3.13.0' // ml-common excluded reflection for runtime so we need to add it by ourselves. // https://github.com/opensearch-project/ml-commons/commit/464bfe34c66d7a729a00dd457f03587ea4e504d9 // TODO: Remove following three lines of dependencies if ml-common include them in their jar @@ -153,6 +153,12 @@ dependencies { runtimeOnly group: 'org.opensearch', name: 'common-utils', version: "${opensearch_build}" } +// Resolving apache commons dependency forcefully to make sure that there is no jarhell and multiple dependency coming +// for apache commons lang3 +configurations.all { + resolutionStrategy.force 'org.apache.commons:commons-lang3:3.13.0' +} + // In order to add the jar to the classpath, we need to unzip the // k-NN zip and then copy it into a directory that we specify as a dependency. task extractKnnJar(type: Copy) { diff --git a/src/main/java/org/opensearch/neuralsearch/processor/TextEmbeddingProcessor.java b/src/main/java/org/opensearch/neuralsearch/processor/TextEmbeddingProcessor.java index 878a410a8..31f883140 100644 --- a/src/main/java/org/opensearch/neuralsearch/processor/TextEmbeddingProcessor.java +++ b/src/main/java/org/opensearch/neuralsearch/processor/TextEmbeddingProcessor.java @@ -16,7 +16,7 @@ import lombok.extern.log4j.Log4j2; -import org.apache.commons.lang3.StringUtils; +import org.apache.commons.lang.StringUtils; import org.opensearch.core.action.ActionListener; import org.opensearch.env.Environment; import org.opensearch.index.mapper.MapperService;