This is an automated email from the ASF dual-hosted git repository.

tballison 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 b22e5aa16b TIKA-4833 - update plugin stages to fix hudson builds 
(#3068)
b22e5aa16b is described below

commit b22e5aa16bc56dc905fa72a7ea02287ee725c719
Author: Tim Allison <[email protected]>
AuthorDate: Tue Aug 25 14:05:18 2026 -0400

    TIKA-4833 - update plugin stages to fix hudson builds (#3068)
---
 .../release-guides/release-artifacts.adoc          | 12 +++-
 tika-app/pom.xml                                   |  8 +++
 tika-e2e-tests/tika-server/pom.xml                 | 10 +++
 tika-grpc/pom.xml                                  | 71 ++++++++++++++++++++++
 .../tika-pipes-es-integration-tests/pom.xml        |  8 +++
 .../pom.xml                                        |  8 +++
 .../tika-pipes-solr-integration-tests/pom.xml      |  8 +++
 tika-parent/pom.xml                                |  3 -
 tika-pipes/tika-pipes-integration-tests/pom.xml    |  8 +++
 .../tika-pipes-atlassian-jwt/pom.xml               | 12 ++--
 .../tika-pipes-plugins/tika-pipes-az-blob/pom.xml  | 12 ++--
 .../tika-pipes-plugins/tika-pipes-csv/pom.xml      | 12 ++--
 .../tika-pipes-plugins/tika-pipes-es/pom.xml       | 12 ++--
 .../tika-pipes-file-system/pom.xml                 | 12 ++--
 .../tika-pipes-plugins/tika-pipes-gcs/pom.xml      | 12 ++--
 .../tika-pipes-google-drive/pom.xml                | 12 ++--
 .../tika-pipes-plugins/tika-pipes-http/pom.xml     | 12 ++--
 .../tika-pipes-plugins/tika-pipes-jdbc/pom.xml     | 12 ++--
 .../tika-pipes-plugins/tika-pipes-json/pom.xml     | 12 ++--
 .../tika-pipes-plugins/tika-pipes-kafka/pom.xml    | 12 ++--
 .../tika-pipes-microsoft-graph/pom.xml             | 12 ++--
 .../tika-pipes-opensearch/pom.xml                  | 12 ++--
 .../tika-pipes-plugins/tika-pipes-s3/pom.xml       | 12 ++--
 .../tika-pipes-plugins/tika-pipes-solr/pom.xml     | 12 ++--
 tika-server/tika-server-core/pom.xml               |  8 +++
 tika-server/tika-server-standard/pom.xml           |  8 +++
 26 files changed, 238 insertions(+), 94 deletions(-)

diff --git 
a/docs/modules/ROOT/pages/maintainers/release-guides/release-artifacts.adoc 
b/docs/modules/ROOT/pages/maintainers/release-guides/release-artifacts.adoc
index 00ca098b58..44c7d494b4 100644
--- a/docs/modules/ROOT/pages/maintainers/release-guides/release-artifacts.adoc
+++ b/docs/modules/ROOT/pages/maintainers/release-guides/release-artifacts.adoc
@@ -146,7 +146,7 @@ API or embedding it programmatically.
 Mechanism: `maven-assembly-plugin` with `<attach>false</attach>` in each
 plugin pom (TIKA-4723). Because `<attach>false</attach>` also skips the
 local-repo install, each plugin pom additionally runs
-`maven-install-plugin:install-file` during the `install` phase, writing
+`maven-install-plugin:install-file` during the `package` phase, writing
 the zip into the local repo at canonical coordinates
 (`<groupId>:<artifactId>:zip:<version>`). Sibling modules
 (`tika-pipes-fork-parser`, `tika-server-*`, `tika-grpc`, integration
@@ -154,6 +154,16 @@ tests) declare the zip as a test-scope Maven dep and rely 
on this
 mechanism to resolve it from the local repo without ever publishing it
 to Central.
 
+The `package` binding is deliberate and must not be moved to `install`.
+A reactor `mvn package` — what the `tika-main-jdk21` and `tika-main-jdk26`
+Jenkins jobs run, and what a contributor building the tree runs — never
+reaches the `install` phase, so an `install`-bound `install-file` leaves
+the zip unresolvable and every consuming module fails dependency
+resolution. It builds only where a previous `mvn install`/`deploy` on the
+same machine happened to leave a matching zip in the local repo, which
+made the breakage look intermittent until the `4.0.0` → `4.1.0-SNAPSHOT`
+bump invalidated every cached copy.
+
 === tika-grpc
 
 tika-grpc is a standalone gRPC server, parallel to tika-server — not built
diff --git a/tika-app/pom.xml b/tika-app/pom.xml
index 737c53ad27..fea6bc9351 100644
--- a/tika-app/pom.xml
+++ b/tika-app/pom.xml
@@ -105,6 +105,14 @@
       <groupId>org.slf4j</groupId>
       <artifactId>jcl-over-slf4j</artifactId>
     </dependency>
+    <!-- The zip deps are what force reactor ordering; the zips are consumed 
by dependency-plugin below. -->
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-file-system</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
   </dependencies>
 
   <build>
diff --git a/tika-e2e-tests/tika-server/pom.xml 
b/tika-e2e-tests/tika-server/pom.xml
index 0cc49c6e6a..c8942ecf66 100644
--- a/tika-e2e-tests/tika-server/pom.xml
+++ b/tika-e2e-tests/tika-server/pom.xml
@@ -94,6 +94,16 @@
     <profiles>
         <profile>
             <id>e2e</id>
+            <!-- The zip dep is what forces reactor ordering; the zip is 
consumed by dependency-plugin below. -->
+            <dependencies>
+                <dependency>
+                    <groupId>org.apache.tika</groupId>
+                    <artifactId>tika-server-standard</artifactId>
+                    <version>${revision}</version>
+                    <scope>test</scope>
+                    <type>zip</type>
+                </dependency>
+            </dependencies>
             <build>
                 <plugins>
                     <plugin>
diff --git a/tika-grpc/pom.xml b/tika-grpc/pom.xml
index 2d9977c978..de72301d3a 100644
--- a/tika-grpc/pom.xml
+++ b/tika-grpc/pom.xml
@@ -230,6 +230,77 @@
       <scope>test</scope>
       <type>zip</type>
     </dependency>
+    <!-- The zip deps are what force reactor ordering; the zips are consumed 
by dependency-plugin below. -->
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-az-blob</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-csv</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-gcs</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-jdbc</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-json</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-kafka</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-microsoft-graph</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-opensearch</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-s3</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-solr</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
     <dependency>
       <groupId>com.fasterxml.jackson.module</groupId>
       <artifactId>jackson-module-jsonSchema</artifactId>
diff --git a/tika-integration-tests/tika-pipes-es-integration-tests/pom.xml 
b/tika-integration-tests/tika-pipes-es-integration-tests/pom.xml
index cc4a159d4c..710ac05ba9 100644
--- a/tika-integration-tests/tika-pipes-es-integration-tests/pom.xml
+++ b/tika-integration-tests/tika-pipes-es-integration-tests/pom.xml
@@ -42,6 +42,14 @@
       <scope>test</scope>
       <type>zip</type>
     </dependency>
+    <!-- The zip deps are what force reactor ordering; the zips are consumed 
by dependency-plugin below. -->
+    <dependency>
+      <groupId>${project.groupId}</groupId>
+      <artifactId>tika-pipes-es</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
     <dependency>
       <groupId>${project.groupId}</groupId>
       <artifactId>tika-pipes-es</artifactId>
diff --git 
a/tika-integration-tests/tika-pipes-opensearch-integration-tests/pom.xml 
b/tika-integration-tests/tika-pipes-opensearch-integration-tests/pom.xml
index a9687078cb..30f0d96a04 100644
--- a/tika-integration-tests/tika-pipes-opensearch-integration-tests/pom.xml
+++ b/tika-integration-tests/tika-pipes-opensearch-integration-tests/pom.xml
@@ -42,6 +42,14 @@
       <scope>test</scope>
       <type>zip</type>
     </dependency>
+    <!-- The zip deps are what force reactor ordering; the zips are consumed 
by dependency-plugin below. -->
+    <dependency>
+      <groupId>${project.groupId}</groupId>
+      <artifactId>tika-pipes-opensearch</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
     <dependency>
       <groupId>${project.groupId}</groupId>
       <artifactId>tika-pipes-opensearch</artifactId>
diff --git a/tika-integration-tests/tika-pipes-solr-integration-tests/pom.xml 
b/tika-integration-tests/tika-pipes-solr-integration-tests/pom.xml
index 5178536964..2ff3052454 100644
--- a/tika-integration-tests/tika-pipes-solr-integration-tests/pom.xml
+++ b/tika-integration-tests/tika-pipes-solr-integration-tests/pom.xml
@@ -52,6 +52,14 @@
       <scope>test</scope>
       <type>zip</type>
     </dependency>
+    <!-- The zip deps are what force reactor ordering; the zips are consumed 
by dependency-plugin below. -->
+    <dependency>
+      <groupId>${project.groupId}</groupId>
+      <artifactId>tika-pipes-solr</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
     <dependency>
       <groupId>${project.groupId}</groupId>
       <artifactId>tika-core</artifactId>
diff --git a/tika-parent/pom.xml b/tika-parent/pom.xml
index 72af1f9985..e8ee830cd1 100644
--- a/tika-parent/pom.xml
+++ b/tika-parent/pom.xml
@@ -1504,9 +1504,6 @@
         <version>3.3.1</version>
         <configuration>
           <autoVersionSubmodules>true</autoVersionSubmodules>
-          <!-- 'install' (not the default 'verify') so the install-only pf4j 
plugin zips
-               (attach=false, installed via install:install-file; see 
tika-pipes plugins)
-               are available in the local repo for sibling modules that depend 
on them. -->
           <preparationGoals>clean install</preparationGoals>
         </configuration>
         <dependencies>
diff --git a/tika-pipes/tika-pipes-integration-tests/pom.xml 
b/tika-pipes/tika-pipes-integration-tests/pom.xml
index 2d035250de..716aa3d2be 100644
--- a/tika-pipes/tika-pipes-integration-tests/pom.xml
+++ b/tika-pipes/tika-pipes-integration-tests/pom.xml
@@ -94,6 +94,14 @@
       <type>pom</type>
       <scope>test</scope>
     </dependency>
+    <!-- The zip deps are what force reactor ordering; the zips are consumed 
by dependency-plugin below. -->
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-file-system</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
   </dependencies>
   <build>
     <plugins>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-atlassian-jwt/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-atlassian-jwt/pom.xml
index d7544904cd..86b356151e 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-atlassian-jwt/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-atlassian-jwt/pom.xml
@@ -131,15 +131,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-az-blob/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-az-blob/pom.xml
index 0e9c49d145..52d1dd10a5 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-az-blob/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-az-blob/pom.xml
@@ -117,15 +117,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-csv/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-csv/pom.xml
index 887da4d961..39e8adddfb 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-csv/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-csv/pom.xml
@@ -109,15 +109,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-es/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-es/pom.xml
index e8739bec0d..e7fe025c09 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-es/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-es/pom.xml
@@ -128,15 +128,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-file-system/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-file-system/pom.xml
index 143268ed96..fde5070d52 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-file-system/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-file-system/pom.xml
@@ -121,15 +121,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-gcs/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-gcs/pom.xml
index b917e01796..2b8ba80eb5 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-gcs/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-gcs/pom.xml
@@ -113,15 +113,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-google-drive/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-google-drive/pom.xml
index 38afa7aaa7..55483a6f1b 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-google-drive/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-google-drive/pom.xml
@@ -181,15 +181,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-http/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-http/pom.xml
index 7f69f48875..d716a37f9d 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-http/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-http/pom.xml
@@ -197,15 +197,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-jdbc/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-jdbc/pom.xml
index b2d425b0fa..d7533f818d 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-jdbc/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-jdbc/pom.xml
@@ -113,15 +113,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-json/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-json/pom.xml
index 778de9b15b..418abad8be 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-json/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-json/pom.xml
@@ -111,15 +111,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-kafka/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-kafka/pom.xml
index 108cf10b03..37dd8dcb42 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-kafka/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-kafka/pom.xml
@@ -120,15 +120,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-microsoft-graph/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-microsoft-graph/pom.xml
index bd87d879c9..58c3b215ba 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-microsoft-graph/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-microsoft-graph/pom.xml
@@ -210,15 +210,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-opensearch/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-opensearch/pom.xml
index 55921fbd8b..61b2b8bb1e 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-opensearch/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-opensearch/pom.xml
@@ -124,15 +124,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-s3/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-s3/pom.xml
index f51eeeb21a..e8ffb28c75 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-s3/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-s3/pom.xml
@@ -124,15 +124,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-pipes/tika-pipes-plugins/tika-pipes-solr/pom.xml 
b/tika-pipes/tika-pipes-plugins/tika-pipes-solr/pom.xml
index ea7059a9db..62ba948860 100644
--- a/tika-pipes/tika-pipes-plugins/tika-pipes-solr/pom.xml
+++ b/tika-pipes/tika-pipes-plugins/tika-pipes-solr/pom.xml
@@ -143,15 +143,15 @@
         <artifactId>maven-install-plugin</artifactId>
         <executions>
           <!--
-            The assembly attaches the zip with <attach>false</attach> 
(TIKA-4723)
-            so it is not added to the Maven artifact set and therefore is not
-            deployed to Maven Central. Sibling modules declare this plugin zip
-            as a test-scope Maven dep, so we install-file it locally to satisfy
-            reactor resolution without making it part of the project artifacts.
+            The assembly builds the zip with <attach>false</attach> 
(TIKA-4723) so it
+            stays out of the Maven artifact set and off Maven Central. Sibling 
modules
+            declare it as a test-scope zip dep, so install-file puts it in the 
local
+            repo instead. Bound to package, not install: CI and contributors 
run
+            `mvn package`, which has to resolve it too.
           -->
           <execution>
             <id>install-plugin-zip-locally</id>
-            <phase>install</phase>
+            <phase>package</phase>
             <goals>
               <goal>install-file</goal>
             </goals>
diff --git a/tika-server/tika-server-core/pom.xml 
b/tika-server/tika-server-core/pom.xml
index 90de66d67d..b030d37f70 100644
--- a/tika-server/tika-server-core/pom.xml
+++ b/tika-server/tika-server-core/pom.xml
@@ -124,6 +124,14 @@
       <groupId>org.apache.logging.log4j</groupId>
       <artifactId>log4j-slf4j2-impl</artifactId>
     </dependency>
+    <!-- The zip deps are what force reactor ordering; the zips are consumed 
by dependency-plugin below. -->
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-file-system</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
   </dependencies>
 
   <build>
diff --git a/tika-server/tika-server-standard/pom.xml 
b/tika-server/tika-server-standard/pom.xml
index 3c0ed5f2ba..32fea14da8 100644
--- a/tika-server/tika-server-standard/pom.xml
+++ b/tika-server/tika-server-standard/pom.xml
@@ -107,6 +107,14 @@
       <version>${project.version}</version>
       <scope>test</scope>
     </dependency>
+    <!-- The zip deps are what force reactor ordering; the zips are consumed 
by dependency-plugin below. -->
+    <dependency>
+      <groupId>org.apache.tika</groupId>
+      <artifactId>tika-pipes-file-system</artifactId>
+      <version>${project.version}</version>
+      <scope>test</scope>
+      <type>zip</type>
+    </dependency>
   </dependencies>
   <build>
     <plugins>

Reply via email to