Merge branch 'main-v2' into feature/UIMA-6325-Update-to-UIMA-Parent-POM-14

* main-v2:
  [UIMA-6307] Centralize Jenkins pipelines
  [UIMA-6323] SeedLexer not generated when building in Eclipse
diff --git a/.gitignore b/.gitignore
index 1da8d91..f5f72ff 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,3 +5,4 @@
 target/
 api-change-report/
 issuesFixed
+.factorypath
diff --git a/Jenkinsfile b/Jenkinsfile
index 0edcbcf..7d2ed34 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -14,75 +14,11 @@
 // KIND, either express or implied. See the License for the
 // specific language governing permissions and limitations
 // under the License.
-  
-pipeline {
-  agent any
-  tools { 
-    maven 'Maven (latest)' 
-    jdk 'JDK 1.8 (latest)' 
-  }
 
-  options {
-    buildDiscarder(logRotator(
-      numToKeepStr: '25', 
-      artifactNumToKeepStr: '5'
-    ))
-    
-    // Seems not to be working reliably yet: https://issues.jenkins-ci.org/browse/JENKINS-48556
-    // timestamps()
-  }
-  
-  parameters {
-    string(
-      name: 'extraMavenArguments',
-      defaultValue: "",
-      description: "Extra arguments to be passed to maven (for testing)")
-  }
+@Library('uima-build-jenkins-shared-library') _
 
-  stages {
-    // Display information about the build environemnt. This can be useful for debugging
-    // build issues.
-    stage("Build info") {
-      steps {
-        echo '=== Environment variables ==='
-        sh 'printenv'
-      }
-    }
-        
-    // Perform a merge request build. This is a conditional stage executed with the GitLab
-    // sources plugin triggers a build for a merge request. To avoid conflicts with other
-    // builds, this stage should not deploy artifacts to the Maven repository server and
-    // also not install them locally.
-    stage("Pull request build") {
-      when { branch 'PR-*' }
-    
-      steps {
-        script {
-          currentBuild.description = 'Triggered by: <a href="' + CHANGE_URL + '">' + BRANCH_NAME +
-            ': ' + env.CHANGE_BRANCH + '</a> (' +  env.CHANGE_AUTHOR_DISPLAY_NAME + ')'
-        }
-
-        withMaven() {
-          sh script: 'mvn ' +
-            params.extraMavenArguments +
-            ' -U -Dmaven.test.failure.ignore=true clean verify'
-        }
-      }
-    }
-    
-    // Perform a SNAPSHOT build of a main branch. This stage is typically executed after a
-    // merge request has been merged. On success, it deploys the generated artifacts to the
-    // Maven repository server.
-    stage("SNAPSHOT build") {
-      when { branch pattern: "main|main-v2", comparator: "REGEXP" }
-      
-      steps {
-        withMaven() {
-          sh script: 'mvn ' +
-            params.extraMavenArguments +
-            ' -U -Dmaven.test.failure.ignore=true clean deploy'
-        }
-      }
-    }
-  }
+defaultPipeline {
+  // The Eclipse libraries that our plugins depend unfortunately on required Java 11
+  jdk = 'jdk_11_latest'
+  extraMavenArguments = '-Pjacoco,pmd,run-rat-report'
 }
diff --git a/ruta-core/pom.xml b/ruta-core/pom.xml
index a1fae5b..7401081 100644
--- a/ruta-core/pom.xml
+++ b/ruta-core/pom.xml
@@ -216,16 +216,14 @@
                 <pluginExecution>

                   <pluginExecutionFilter>

                     <groupId>de.jflex</groupId>

-                    <artifactId>

-                      jflex-maven-plugin

-                    </artifactId>

+                    <artifactId>jflex-maven-plugin</artifactId>

                     <versionRange>[1.6.1,)</versionRange>

                     <goals>

                       <goal>generate</goal>

                     </goals>

                   </pluginExecutionFilter>

                   <action>

-                    <ignore />

+                    <execute />

                   </action>

                 </pluginExecution>

               </pluginExecutions>