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

rzo1 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/opennlp-addons.git


The following commit(s) were added to refs/heads/main by this push:
     new fccd9ec  Update addon components to use modular OpenNLP 3.0.0-M1 - 
adapts OpenNLP version in pom files - adapts towards more fine-grained use of 
modular components - adapts classes with missing generic types - removes use of 
`new URL(..)` - bumps snapshot version for next dev iteration
fccd9ec is described below

commit fccd9ec2d0692ddf66b499b4c556467a55147e60
Author: Martin Wiesner <[email protected]>
AuthorDate: Fri Mar 20 22:46:10 2026 +0100

    Update addon components to use modular OpenNLP 3.0.0-M1
    - adapts OpenNLP version in pom files
    - adapts towards more fine-grained use of modular components
    - adapts classes with missing generic types
    - removes use of `new URL(..)`
    - bumps snapshot version for next dev iteration
---
 .github/workflows/maven.yml                        |  9 ++++----
 geoentitylinker-addon/pom.xml                      | 10 +++++---
 .../indexing/GeonamesFileDownloader.java           |  3 ++-
 japanese-addon/pom.xml                             | 11 +++++----
 jwnl-addon/pom.xml                                 |  7 +++---
 liblinear-addon/pom.xml                            |  4 ++--
 .../src/main/java/LiblinearTrainer.java            |  5 ++--
 modelbuilder-addon/pom.xml                         | 11 +++++----
 morfologik-addon/pom.xml                           | 12 ++++++----
 pom.xml                                            | 27 ++++++++++++++--------
 10 files changed, 60 insertions(+), 39 deletions(-)

diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
index 6da1155..341c449 100644
--- a/.github/workflows/maven.yml
+++ b/.github/workflows/maven.yml
@@ -16,7 +16,7 @@
 name: Java CI
 
 on:
-  # Run CI on Pushes to "master"" or on pull requests targeting "master".
+  # Run CI on Pushes to "main" or on pull requests targeting "main".
   push:
     branches:
       - main
@@ -28,15 +28,14 @@ on:
 jobs:
   build:
     runs-on: ${{ matrix.os }}
-    continue-on-error: ${{ matrix.experimental }}
     strategy:
       fail-fast: false
       matrix:
         os: [ubuntu-latest, windows-latest]
-        java: [ 17, 21, 25 ]
+        java: [ 21, 25 ]
         experimental: [false]
 #         include:
-#           - java: 24-ea
+#           - java: 26-ea
 #             os: ubuntu-latest
 #             experimental: true
 
@@ -54,6 +53,6 @@ jobs:
         distribution: temurin
         java-version: ${{ matrix.java }}
     - name: Build with Maven
-      run: mvn -V clean test install --no-transfer-progress -Pjacoco
+      run: mvn -V clean test verify --no-transfer-progress -Pjacoco
     - name: Jacoco
       run: mvn jacoco:report
diff --git a/geoentitylinker-addon/pom.xml b/geoentitylinker-addon/pom.xml
index b43492b..44eb508 100644
--- a/geoentitylinker-addon/pom.xml
+++ b/geoentitylinker-addon/pom.xml
@@ -25,12 +25,12 @@
     <parent>
         <groupId>org.apache.opennlp</groupId>
         <artifactId>opennlp-addons</artifactId>
-        <version>2.5.8-SNAPSHOT</version>
+        <version>3.0.0-SNAPSHOT</version>
     </parent>
 
     <artifactId>geoentitylinker-addon</artifactId>
-    <packaging>jar</packaging>
     <name>Apache OpenNLP GeoentityLinker Addon</name>
+    <packaging>jar</packaging>
 
     <properties>
         <lucene.version>8.11.4</lucene.version>
@@ -40,7 +40,11 @@
     <dependencies>
         <dependency>
             <groupId>org.apache.opennlp</groupId>
-            <artifactId>opennlp-tools</artifactId>
+            <artifactId>opennlp-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.opennlp</groupId>
+            <artifactId>opennlp-runtime</artifactId>
         </dependency>
         
         <dependency>
diff --git 
a/geoentitylinker-addon/src/main/java/opennlp/addons/geoentitylinker/indexing/GeonamesFileDownloader.java
 
b/geoentitylinker-addon/src/main/java/opennlp/addons/geoentitylinker/indexing/GeonamesFileDownloader.java
index b255553..9e90e00 100644
--- 
a/geoentitylinker-addon/src/main/java/opennlp/addons/geoentitylinker/indexing/GeonamesFileDownloader.java
+++ 
b/geoentitylinker-addon/src/main/java/opennlp/addons/geoentitylinker/indexing/GeonamesFileDownloader.java
@@ -20,6 +20,7 @@ import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
+import java.net.URI;
 import java.net.URL;
 import java.util.Enumeration;
 import java.util.zip.ZipEntry;
@@ -71,7 +72,7 @@ public class GeonamesFileDownloader {
 
   public static String fileUrl(String fAddress, String localFileName, String 
destDir) {
     String filename = destDir + "\\" + localFileName;
-    try (InputStream is = new URL(fAddress).openConnection().getInputStream();
+    try (InputStream is = new 
URI(fAddress).toURL().openConnection().getInputStream();
          OutputStream outStream = new BufferedOutputStream(new 
FileOutputStream(destDir + "\\" + localFileName))) {
 
       byte[] buf = new byte[size];
diff --git a/japanese-addon/pom.xml b/japanese-addon/pom.xml
index d95c417..c7decf8 100644
--- a/japanese-addon/pom.xml
+++ b/japanese-addon/pom.xml
@@ -25,18 +25,21 @@
   <parent>
     <groupId>org.apache.opennlp</groupId>
     <artifactId>opennlp-addons</artifactId>
-    <version>2.5.8-SNAPSHOT</version>
+    <version>3.0.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>japanese-addon</artifactId>
-  <packaging>jar</packaging>
-  <version>2.5.8-SNAPSHOT</version>
   <name>Apache OpenNLP Japanese Addon</name>
+  <packaging>jar</packaging>
 
   <dependencies>
     <dependency>
       <groupId>org.apache.opennlp</groupId>
-      <artifactId>opennlp-tools</artifactId>
+      <artifactId>opennlp-api</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.opennlp</groupId>
+      <artifactId>opennlp-runtime</artifactId>
     </dependency>
 
     <dependency>
diff --git a/jwnl-addon/pom.xml b/jwnl-addon/pom.xml
index 35c6007..8339520 100644
--- a/jwnl-addon/pom.xml
+++ b/jwnl-addon/pom.xml
@@ -25,13 +25,12 @@
   <parent>
     <groupId>org.apache.opennlp</groupId>
     <artifactId>opennlp-addons</artifactId>
-    <version>2.5.8-SNAPSHOT</version>
+    <version>3.0.0-SNAPSHOT</version>
   </parent>
   
   <artifactId>jwnl-addon</artifactId>
-  <version>2.5.8-SNAPSHOT</version>
-  <packaging>jar</packaging>
   <name>Apache OpenNLP JWNL Addon</name>
+  <packaging>jar</packaging>
 
   <properties>
     <extjwnl.version>2.0.5</extjwnl.version>
@@ -41,7 +40,7 @@
   <dependencies>
     <dependency>
       <groupId>org.apache.opennlp</groupId>
-      <artifactId>opennlp-tools</artifactId>
+      <artifactId>opennlp-api</artifactId>
     </dependency>
 
     <dependency>
diff --git a/liblinear-addon/pom.xml b/liblinear-addon/pom.xml
index c5393af..5a3326f 100644
--- a/liblinear-addon/pom.xml
+++ b/liblinear-addon/pom.xml
@@ -24,7 +24,7 @@
        <parent>
                <groupId>org.apache.opennlp</groupId>
                <artifactId>opennlp-addons</artifactId>
-               <version>2.5.8-SNAPSHOT</version>
+               <version>3.0.0-SNAPSHOT</version>
        </parent>
        
        <artifactId>liblinear-addon</artifactId>
@@ -34,7 +34,7 @@
        <dependencies>
                <dependency>
                        <groupId>org.apache.opennlp</groupId>
-                       <artifactId>opennlp-tools</artifactId>
+                       <artifactId>opennlp-runtime</artifactId>
                </dependency>
 
                <dependency>
diff --git a/liblinear-addon/src/main/java/LiblinearTrainer.java 
b/liblinear-addon/src/main/java/LiblinearTrainer.java
index a494a09..dce4437 100644
--- a/liblinear-addon/src/main/java/LiblinearTrainer.java
+++ b/liblinear-addon/src/main/java/LiblinearTrainer.java
@@ -30,13 +30,14 @@ import de.bwaldvogel.liblinear.Model;
 import de.bwaldvogel.liblinear.Parameter;
 import de.bwaldvogel.liblinear.Problem;
 import de.bwaldvogel.liblinear.SolverType;
+import de.bwaldvogel.liblinear.Train;
 
 import opennlp.tools.ml.AbstractEventTrainer;
 import opennlp.tools.ml.model.DataIndexer;
 import opennlp.tools.ml.model.MaxentModel;
 import opennlp.tools.util.TrainingParameters;
 
-public class LiblinearTrainer extends AbstractEventTrainer {
+public class LiblinearTrainer extends AbstractEventTrainer<TrainingParameters> 
{
 
   private final SolverType solverType;
   private final double c;
@@ -97,7 +98,7 @@ public class LiblinearTrainer extends AbstractEventTrainer {
   }
 
   @Override
-  public MaxentModel doTrain(DataIndexer indexer) throws IOException {
+  public MaxentModel doTrain(DataIndexer<TrainingParameters> indexer) throws 
IOException {
 
     List<Double> vy = new ArrayList<>();
     List<Feature[]> vx = new ArrayList<>();
diff --git a/modelbuilder-addon/pom.xml b/modelbuilder-addon/pom.xml
index c2b91f6..ce52909 100644
--- a/modelbuilder-addon/pom.xml
+++ b/modelbuilder-addon/pom.xml
@@ -25,19 +25,22 @@
   <parent>
     <groupId>org.apache.opennlp</groupId>
     <artifactId>opennlp-addons</artifactId>
-    <version>2.5.8-SNAPSHOT</version>
+    <version>3.0.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>modelbuilder-addon</artifactId>
-  <version>2.5.8-SNAPSHOT</version>
+  <name>Apache OpenNLP ModelBuilder Addon</name>
   <packaging>jar</packaging>
 
-  <name>Apache OpenNLP ModelBuilder Addon</name>
 
   <dependencies>
     <dependency>
       <groupId>org.apache.opennlp</groupId>
-      <artifactId>opennlp-tools</artifactId>
+      <artifactId>opennlp-runtime</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.opennlp</groupId>
+      <artifactId>opennlp-formats</artifactId>
     </dependency>
 
     <dependency>
diff --git a/morfologik-addon/pom.xml b/morfologik-addon/pom.xml
index ad3df9d..89c03b6 100644
--- a/morfologik-addon/pom.xml
+++ b/morfologik-addon/pom.xml
@@ -25,20 +25,22 @@
        <parent>
                <groupId>org.apache.opennlp</groupId>
                <artifactId>opennlp-addons</artifactId>
-               <version>2.5.8-SNAPSHOT</version>
+               <version>3.0.0-SNAPSHOT</version>
        </parent>
 
        <artifactId>morfologik-addon</artifactId>
-       <version>2.5.8-SNAPSHOT</version>
-       <packaging>jar</packaging>
        <name>Apache OpenNLP Morfologik Addon</name>
+       <packaging>jar</packaging>
 
        <dependencies>
                <dependency>
                        <groupId>org.apache.opennlp</groupId>
-                       <artifactId>opennlp-tools</artifactId>
+                       <artifactId>opennlp-runtime</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.opennlp</groupId>
+                       <artifactId>opennlp-cli</artifactId>
                </dependency>
-
                <dependency>
                        <groupId>org.carrot2</groupId>
                        <artifactId>morfologik-stemming</artifactId>
diff --git a/pom.xml b/pom.xml
index 98f63b2..aadf49c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -30,7 +30,7 @@
 
     <groupId>org.apache.opennlp</groupId>
     <artifactId>opennlp-addons</artifactId>
-    <version>2.5.8-SNAPSHOT</version>
+    <version>3.0.0-SNAPSHOT</version>
     <packaging>pom</packaging>
 
     <name>Apache OpenNLP Addons</name>
@@ -104,13 +104,13 @@
 
     <properties>
         <!-- Build Properties -->
-        <java.version>17</java.version>
+        <java.version>21</java.version>
         <maven.version>3.3.9</maven.version>
         <maven.compiler.source>${java.version}</maven.compiler.source>
         <maven.compiler.target>${java.version}</maven.compiler.target>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
 
-        <opennlp.tools.version>2.5.7</opennlp.tools.version>
+        <opennlp.version>3.0.0-M1</opennlp.version>
         <opennlp.forkCount>1.0C</opennlp.forkCount>
 
         <slf4j.version>2.0.17</slf4j.version>
@@ -128,17 +128,26 @@
     <dependencyManagement>
         <dependencies>
             <dependency>
-                <artifactId>opennlp-tools</artifactId>
+                <artifactId>opennlp-api</artifactId>
                 <groupId>${project.groupId}</groupId>
-                <version>${opennlp.tools.version}</version>
+                <version>${opennlp.version}</version>
+            </dependency>
+            <dependency>
+                <artifactId>opennlp-runtime</artifactId>
+                <groupId>${project.groupId}</groupId>
+                <version>${opennlp.version}</version>
             </dependency>
-
             <dependency>
-                <artifactId>opennlp-tools</artifactId>
+                <artifactId>opennlp-formats</artifactId>
                 <groupId>${project.groupId}</groupId>
-                <version>${project.version}</version>
-                <type>test-jar</type>
+                <version>${opennlp.version}</version>
             </dependency>
+            <dependency>
+                <artifactId>opennlp-cli</artifactId>
+                <groupId>${project.groupId}</groupId>
+                <version>${opennlp.version}</version>
+            </dependency>
+
 
             <dependency>
                 <groupId>org.slf4j</groupId>

Reply via email to