This is an automated email from the ASF dual-hosted git repository.
tallison pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tika.git
The following commit(s) were added to refs/heads/main by this push:
new 7f69cc6b90 TIKA-4709: avoid shading grpc (#2745)
7f69cc6b90 is described below
commit 7f69cc6b902488f347c5f776a044391d78157e46
Author: Tim Allison <[email protected]>
AuthorDate: Mon Apr 6 16:21:22 2026 -0400
TIKA-4709: avoid shading grpc (#2745)
---
tika-grpc/pom.xml | 90 +++++++++++++-------------------
tika-grpc/src/main/assembly/assembly.xml | 51 ++++++++++++++++++
2 files changed, 87 insertions(+), 54 deletions(-)
diff --git a/tika-grpc/pom.xml b/tika-grpc/pom.xml
index 309ac82101..9ee9025de2 100644
--- a/tika-grpc/pom.xml
+++ b/tika-grpc/pom.xml
@@ -264,6 +264,20 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
+ <execution>
+ <id>copy-dependencies</id>
+ <phase>package</phase>
+ <goals>
+ <goal>copy-dependencies</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${project.build.directory}/lib</outputDirectory>
+ <includeScope>runtime</includeScope>
+ <stripVersion>false</stripVersion>
+ <overWriteReleases>false</overWriteReleases>
+ <overWriteSnapshots>false</overWriteSnapshots>
+ </configuration>
+ </execution>
<execution>
<id>copy-plugins</id>
<phase>process-test-resources</phase>
@@ -452,65 +466,33 @@
</configuration>
</plugin>
<plugin>
- <artifactId>maven-shade-plugin</artifactId>
- <version>${maven.shade.version}</version>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <configuration>
+ <archive>
+ <manifest>
+ <mainClass>org.apache.tika.pipes.grpc.TikaGrpcServer</mainClass>
+ <addClasspath>true</addClasspath>
+ <classpathPrefix>lib/</classpathPrefix>
+ </manifest>
+ </archive>
+ </configuration>
+ </plugin>
+ <plugin>
+ <artifactId>maven-assembly-plugin</artifactId>
+ <configuration>
+ <descriptors>
+ <descriptor>src/main/assembly/assembly.xml</descriptor>
+ </descriptors>
+ <appendAssemblyId>false</appendAssemblyId>
+ </configuration>
<executions>
<execution>
+ <id>make-assembly</id>
<phase>package</phase>
<goals>
- <goal>shade</goal>
+ <goal>single</goal>
</goals>
- <configuration>
- <createDependencyReducedPom>
- false
- </createDependencyReducedPom>
- <artifactSet>
- <excludes>
- </excludes>
- </artifactSet>
- <filters>
- <filter>
- <artifact>*:*</artifact>
- <excludes>
- <exclude>module-info.class</exclude>
- <exclude>META-INF/maven/plugin.xml</exclude>
- <exclude>META-INF/versions/9/module-info.class</exclude>
- <exclude>META-INF/*.SF</exclude>
- <exclude>META-INF/*.DSA</exclude>
- <exclude>META-INF/*.RSA</exclude>
- <exclude>META-INF/*.txt</exclude>
- <exclude>META-INF/ASL2.0</exclude>
- <exclude>META-INF/DEPENDENCIES</exclude>
- <exclude>META-INF/LICENSE</exclude>
- <exclude>META-INF/NOTICE</exclude>
- <exclude>META-INF/README</exclude>
- <exclude>META-INF/MANIFEST.MF</exclude>
- <exclude>LICENSE.txt</exclude>
- <exclude>NOTICE.txt</exclude>
- <exclude>CHANGES</exclude>
- <exclude>README</exclude>
- <exclude>builddef.lst</exclude>
- </excludes>
- </filter>
- </filters>
- <transformers>
- <transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
-
<mainClass>org.apache.tika.pipes.grpc.TikaGrpcServer</mainClass>
- <manifestEntries>
- <Multi-Release>true</Multi-Release>
- </manifestEntries>
- </transformer>
- <transformer
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
- <transformer
implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
- <resource>META-INF/LICENSE</resource>
- <file>target/classes/META-INF/LICENSE</file>
- </transformer>
- <transformer
implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
- <resource>META-INF/NOTICE</resource>
- <file>target/classes/META-INF/NOTICE</file>
- </transformer>
- </transformers>
- </configuration>
</execution>
</executions>
</plugin>
diff --git a/tika-grpc/src/main/assembly/assembly.xml
b/tika-grpc/src/main/assembly/assembly.xml
new file mode 100644
index 0000000000..37c48d4032
--- /dev/null
+++ b/tika-grpc/src/main/assembly/assembly.xml
@@ -0,0 +1,51 @@
+<!--
+ 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.
+-->
+<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.1.1"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.1.1
http://maven.apache.org/xsd/assembly-2.1.1.xsd">
+ <id>bin</id>
+ <formats>
+ <format>zip</format>
+ </formats>
+ <includeBaseDirectory>false</includeBaseDirectory>
+
+ <dependencySets>
+ <dependencySet>
+ <outputDirectory>lib</outputDirectory>
+ <useProjectArtifact>false</useProjectArtifact>
+ <unpack>false</unpack>
+ <scope>runtime</scope>
+ </dependencySet>
+ </dependencySets>
+ <fileSets>
+ <fileSet>
+ <directory>${project.build.directory}</directory>
+ <outputDirectory>/</outputDirectory>
+ <includes>
+ <include>*.jar</include>
+ </includes>
+ <excludes>
+ <exclude>*-sources.jar</exclude>
+ <exclude>*-javadoc.jar</exclude>
+ </excludes>
+ </fileSet>
+ <fileSet>
+ <directory>${project.build.directory}/plugins</directory>
+ <outputDirectory>plugins</outputDirectory>
+ </fileSet>
+ </fileSets>
+</assembly>