dkpro-core-parent-common
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.dkpro.core</groupId> <artifactId>dkpro-core-parent-common</artifactId> <version>2.5.0</version> </dependency>
<!-- Copyright 2010 Ubiquitous Knowledge Processing (UKP) Lab Technische Universität Darmstadt Licensed 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. --> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.dkpro.core</groupId> <artifactId>dkpro-core</artifactId> <version>2.5.0</version> <relativePath>..</relativePath> </parent> <artifactId>dkpro-core-parent-common</artifactId> <packaging>pom</packaging> <properties> <currentYear>2024</currentYear> <maven.build.timestamp.format>yyyy-MM-dd HH:mm</maven.build.timestamp.format> <maven.surefire.heap>6g</maven.surefire.heap> <junit-jupiter.version>5.10.3</junit-jupiter.version> <junit-platform.version>1.10.3</junit-platform.version> <mockito.version>4.11.0</mockito.version> <assertj.version>3.26.3</assertj.version> <xmlunit.version>2.10.0</xmlunit.version> <ant-version>1.10.14</ant-version> <activation.version>1.2.0</activation.version> <groovy.version>4.0.22</groovy.version> <icu4j.version>75.1</icu4j.version> <jackson.version>2.17.2</jackson.version> <jena.version>4.10.0</jena.version> <log4j.version>2.23.1</log4j.version> <lucene.version>4.4.0</lucene.version> <omtd.version>3.0.2.7</omtd.version> <slf4j.version>2.0.13</slf4j.version> <snakeyaml.version>2.2</snakeyaml.version> <!-- The Spring version should be at least whatever uimaFIT requires --> <spring.version>5.3.37</spring.version> <uima.version>3.5.0</uima.version> <uimafit.version>3.5.0</uimafit.version> <uimafit.plugin.version>${uimafit.version}</uimafit.plugin.version> </properties> <dependencies> <!-- Testing --> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-params</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.platform</groupId> <artifactId>junit-platform-suite-engine</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.platform</groupId> <artifactId>junit-platform-suite-api</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-junit-jupiter</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.xmlunit</groupId> <artifactId>xmlunit-core</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.xmlunit</groupId> <artifactId>xmlunit-assertj3</artifactId> <scope>test</scope> </dependency> <!-- The logging subsystem used by DKPro Core during testing --> <dependency> <!-- Use Log4J v2 as logging backend --> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-slf4j2-impl</artifactId> <scope>test</scope> </dependency> <dependency> <!-- Route Log4J v1 over SLF4J --> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> <scope>test</scope> </dependency> <dependency> <!-- Route Java Commons Logging over SLF4J --> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <scope>test</scope> </dependency> <dependency> <!-- Avoid Commons Logging --> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <scope>test</scope> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <version>${assertj.version}</version> </dependency> <dependency> <groupId>org.xmlunit</groupId> <artifactId>xmlunit-core</artifactId> <version>${xmlunit.version}</version> </dependency> <dependency> <groupId>org.xmlunit</groupId> <artifactId>xmlunit-assertj3</artifactId> <version>${xmlunit.version}</version> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-bom</artifactId> <version>4.11.0</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.junit</groupId> <artifactId>junit-bom</artifactId> <version>${junit-jupiter.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.opentest4j</groupId> <artifactId>opentest4j</artifactId> <version>1.3.0</version> </dependency> <dependency> <groupId>org.apache.uima</groupId> <artifactId>uimaj-core</artifactId> <version>${uima.version}</version> </dependency> <dependency> <groupId>org.apache.uima</groupId> <artifactId>uimaj-json</artifactId> <version>${uima.version}</version> </dependency> <dependency> <groupId>org.apache.uima</groupId> <artifactId>uimaj-tools</artifactId> <version>${uima.version}</version> </dependency> <dependency> <groupId>org.apache.uima</groupId> <artifactId>uimaj-cpe</artifactId> <version>${uima.version}</version> </dependency> <dependency> <groupId>org.apache.uima</groupId> <artifactId>uimaj-document-annotation</artifactId> <version>${uima.version}</version> </dependency> <dependency> <groupId>org.apache.uima</groupId> <artifactId>uimafit-core</artifactId> <version>${uimafit.version}</version> </dependency> <dependency> <groupId>org.apache.uima</groupId> <artifactId>uimafit-cpe</artifactId> <version>${uimafit.version}</version> </dependency> <dependency> <groupId>org.yaml</groupId> <artifactId>snakeyaml</artifactId> <version>${snakeyaml.version}</version> </dependency> <dependency> <groupId>xerces</groupId> <artifactId>xercesImpl</artifactId> <version>2.12.2</version> <exclusions> <exclusion> <groupId>xml-apis</groupId> <artifactId>xml-apis</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>stax</groupId> <artifactId>stax-api</artifactId> <version>1.0.1</version> </dependency> <dependency> <groupId>com.fasterxml.woodstox</groupId> <artifactId>woodstox-core</artifactId> <version>6.7.0</version> <exclusions> <exclusion> <groupId>javax.xml.stream</groupId> <artifactId>stax-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.codehaus.woodstox</groupId> <artifactId>woodstox-core-lgpl</artifactId> <version>4.4.1</version> </dependency> <dependency> <groupId>org.codehaus.woodstox</groupId> <artifactId>stax2-api</artifactId> <version>4.2.1</version> </dependency> <dependency> <groupId>com.ibm.icu</groupId> <artifactId>icu4j</artifactId> <version>${icu4j.version}</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging-api</artifactId> <version>1.1</version> </dependency> <dependency> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> <version>1.8.0</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-math</artifactId> <version>2.2</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-math3</artifactId> <version>3.6.1</version> </dependency> <dependency> <groupId>commons-collections</groupId> <artifactId>commons-collections</artifactId> <version>3.2.2</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <version>4.4</version> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.17.1</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.16.1</version> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-text</artifactId> <version>1.12.0</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.15.0</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-compress</artifactId> <version>1.26.2</version> </dependency> <dependency> <groupId>org.tukaani</groupId> <artifactId>xz</artifactId> <version>1.10</version> </dependency> <dependency> <groupId>org.apache.ant</groupId> <artifactId>ant</artifactId> <version>${ant-version}</version> </dependency> <dependency> <groupId>jaxen</groupId> <artifactId>jaxen</artifactId> <version>1.2.0</version> <exclusions> <exclusion> <artifactId>dom4j</artifactId> <groupId>dom4j</groupId> </exclusion> <exclusion> <artifactId>xom</artifactId> <groupId>xom</groupId> </exclusion> <exclusion> <artifactId>jdom</artifactId> <groupId>jdom</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>xom</groupId> <artifactId>xom</artifactId> <version>1.3.9</version> <exclusions> <exclusion> <groupId>xalan</groupId> <artifactId>xalan</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.dom4j</groupId> <artifactId>dom4j</artifactId> <version>2.1.4</version> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>32.1.3-jre</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-framework-bom</artifactId> <version>${spring.version}</version> <scope>import</scope> <type>pom</type> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-bom</artifactId> <version>${log4j.version}</version> <scope>import</scope> <type>pom</type> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-core</artifactId> <version>${lucene.version}</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-analyzers-common</artifactId> <version>${lucene.version}</version> </dependency> <dependency> <groupId>com.googlecode.jweb1t</groupId> <artifactId>com.googlecode.jweb1t</artifactId> <version>1.4.0</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-reload4j</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jul-to-slf4j</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.3.3</version> </dependency> <dependency> <groupId>it.unimi.dsi</groupId> <artifactId>fastutil</artifactId> <version>8.5.14</version> </dependency> <dependency> <groupId>org.apache.ivy</groupId> <artifactId>ivy</artifactId> <version>2.5.2</version> </dependency> <dependency> <groupId>eu.openminted.share.annotations</groupId> <artifactId>omtd-share-annotations-api</artifactId> <version>${omtd.version}</version> </dependency> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.1</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-core</artifactId> <version>2.3.0.1</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>2.3.9</version> </dependency> <dependency> <groupId>javax.activation</groupId> <artifactId>javax.activation-api</artifactId> <version>1.2.0</version> </dependency> <dependency> <groupId>jakarta.persistence</groupId> <artifactId>jakarta.persistence-api</artifactId> <version>3.2.0</version> </dependency> <dependency> <groupId>jakarta.xml.bind</groupId> <artifactId>jakarta.xml.bind-api</artifactId> <version>4.0.2</version> </dependency> <dependency> <groupId>com.fasterxml.jackson</groupId> <artifactId>jackson-bom</artifactId> <version>${jackson.version}</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.apache.groovy</groupId> <artifactId>groovy-bom</artifactId> <version>${groovy.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <executions> <execution> <id>enforce-maven</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireJavaVersion> <version>[11,)</version> </requireJavaVersion> </rules> </configuration> </execution> <execution> <id>enforce-banned-dependencies</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <bannedDependencies> <excludes> <!-- <exclude>xerces:*</exclude> --> <exclude>xalan:*</exclude> <exclude>xml-apis:*</exclude> <!-- <exclude>commons-lang:commons-lang</exclude> --> <!-- <exclude>org.apache.commons:commons-math</exclude> matetools still uses this --> <exclude>commons-math:commons-math</exclude> <!-- <exclude>commons-collections:commons-collections</exclude> --> </excludes> </bannedDependencies> </rules> <fail>true</fail> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>default</id> <phase>verify</phase> <goals> <goal>analyze-only</goal> </goals> </execution> </executions> <configuration> <failOnWarning>true</failOnWarning> <excludeScope>runtime</excludeScope> <ignoredDependencies> <!-- - We want to depend on commons-logging-api and no complaints about spring.jcl --> <ignoredDependency>commons-logging:commons-logging-api</ignoredDependency> <ignoredDependency>org.springframework:spring-jcl</ignoredDependency> <ignoredDependency>org.slf4j:slf4j-api</ignoredDependency> </ignoredDependencies> <ignoredUnusedDeclaredDependencies combine.children="append"> <!-- - Logging is used via reflection and cannot be detected by Maven --> <dependency>org.apache.logging.log4j:log4j-slf4j2-impl</dependency> <dependency>org.apache.logging.log4j:log4j-spring-boot</dependency> <dependency>org.apache.logging.log4j:log4j-layout-template-json</dependency> <dependency>org.apache.logging.log4j:log4j-core</dependency> <dependency>org.slf4j:log4j-over-slf4j</dependency> <dependency>org.slf4j:jcl-over-slf4j</dependency> <dependency>commons-logging:commons-logging</dependency> <!-- - Javax JAXB is used via reflection and cannot be detected by Maven --> <dependency>javax.xml.bind:jaxb-api</dependency> <dependency>com.sun.xml.bind:jaxb-core</dependency> <dependency>com.sun.xml.bind:jaxb-impl</dependency> <dependency>javax.activation:javax.activation-api</dependency> <!-- - Jakarta JAXB is used via reflection and cannot be detected by Maven --> <dependency>jakarta.xml.bind:jakarta.xml.bind-api</dependency> <dependency>org.glassfish.jaxb</dependency> <!-- - Common test dependencies --> <dependency>org.junit.jupiter:junit-jupiter-api</dependency> <dependency>org.junit.jupiter:junit-jupiter-params</dependency> <dependency>org.junit.platform:junit-platform-suite-engine</dependency> <dependency>org.junit.platform:junit-platform-suite-api</dependency> <dependency>org.mockito:mockito-core</dependency> <dependency>org.mockito:mockito-junit-jupiter</dependency> <dependency>org.assertj:assertj-core</dependency> <dependency>org.xmlunit:xmlunit-core</dependency> <dependency>org.xmlunit:xmlunit-assertj3</dependency> <dependency>org.awaitility:awaitility</dependency> </ignoredUnusedDeclaredDependencies> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <configuration> <notimestamp>true</notimestamp> <!-- Exclude UIMA types and internal API --> <excludePackageNames>*.internal.*</excludePackageNames> <groups> <group> <title>Analysis Components</title> <packages>de.tudarmstadt.ukp.dkpro.core*</packages> </group> <group> <title>APIs</title> <packages>de.tudarmstadt.ukp.dkpro.core.api*</packages> </group> <group> <title>I/O Components</title> <packages>de.tudarmstadt.ukp.dkpro.core.io*</packages> </group> <group> <title>Types</title> <packages>de.tudarmstadt.ukp.dkpro.core.api.coref.type*:de.tudarmstadt.ukp.dkpro.core.api.anomaly.type*:de.tudarmstadt.ukp.dkpro.core.api.frequency.tfidf.type*:de.tudarmstadt.ukp.dkpro.core.api.lexmorph.type*:de.tudarmstadt.ukp.dkpro.core.api.metadata.type*:de.tudarmstadt.ukp.dkpro.core.api.ner.type*:de.tudarmstadt.ukp.dkpro.core.api.phonetics.type*:de.tudarmstadt.ukp.dkpro.core.api.segmentation.type*:de.tudarmstadt.ukp.dkpro.core.api.semantics.type*:de.tudarmstadt.ukp.dkpro.core.api.structure.type*:de.tudarmstadt.ukp.dkpro.core.api.syntax.type*:de.tudarmstadt.ukp.dkpro.core.api.transform.type</packages> </group> <group> <title>Testing</title> <packages>de.tudarmstadt.ukp.dkpro.core.testing*</packages> </group> <group> <title>Examples</title> <packages>de.tudarmstadt.ukp.dkpro.core.examples*</packages> </group> </groups> <sourceFileExcludes> <exclude>**/*_Type.java</exclude> </sourceFileExcludes> <tags> <tag> <name>generated</name> <placement>X</placement> </tag> <tag> <name>ordered</name> <placement>X</placement> </tag> <tag> <name>modifiable</name> <placement>X</placement> </tag> </tags> </configuration> </plugin> <plugin> <groupId>org.apache.uima</groupId> <artifactId>uimafit-maven-plugin</artifactId> <configuration> <componentVendor>DKPro Core Project</componentVendor> <componentCopyright> Copyright ${project.inceptionYear}-${currentYear} Ubiquitous Knowledge Processing (UKP) Lab Technische Universität Darmstadt </componentCopyright> <failOnMissingMetaData>true</failOnMissingMetaData> </configuration> <executions> <execution> <id>default</id> <phase>process-classes</phase> <goals> <goal>enhance</goal> <goal>generate</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>eu.openminted.share.annotations</groupId> <artifactId>omtd-share-annotations-maven-plugin</artifactId> <executions> <execution> <id>default</id> <phase>process-classes</phase> <goals> <goal>generate</goal> </goals> </execution> </executions> <configuration> <validateXml>false</validateXml> <descriptorLocation>withClasses</descriptorLocation> <uimaTypeMappings> <uimaTypeMapping>META-INF/eu.openminted.share/uimaTypeMapping.map</uimaTypeMapping> </uimaTypeMappings> <mimeTypeMappings> <mimeTypeMapping>META-INF/eu.openminted.share/mimeTypeMapping.map</mimeTypeMapping> </mimeTypeMappings> <properties> <docbase>https://dkpro.github.io/dkpro-core/releases/${project.version}/docs</docbase> <resourceNameAddon>(DKPro Core)</resourceNameAddon> <resourceCopyright> Copyright ${project.inceptionYear}-${currentYear} Ubiquitous Knowledge Processing (UKP) Lab Technische Universität Darmstadt (Applies only to the DKPro Core UIMA wrapper. The copyright for wrapped tools and underlying libraries remains with the respective copyright owners.) </resourceCopyright> </properties> </configuration> <dependencies> <!-- Javax JAXB --> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.1</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-core</artifactId> <version>2.3.0.1</version> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>2.3.9</version> </dependency> <dependency> <groupId>javax.activation</groupId> <artifactId>javax.activation-api</artifactId> <version>1.2.0</version> </dependency> </dependencies> </plugin> </plugins> <pluginManagement> <plugins> <plugin> <groupId>org.apache.uima</groupId> <artifactId>uimafit-maven-plugin</artifactId> <version>${uimafit.plugin.version}</version> </plugin> <plugin> <groupId>eu.openminted.share.annotations</groupId> <artifactId>omtd-share-annotations-maven-plugin</artifactId> <version>${omtd.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <systemPropertyVariables> <dkpro.core.testCachePath>${dkpro.core.testCachePath}</dkpro.core.testCachePath> <!-- UIMAv3 changes the default string serialization of feature structures which we rely on in the CasDumpWriter. To minimize the differences between the DKPro Core UIMAv2 and UIMAv3 branches, we force UIMAv3 to use the old serialization. We also do this in the DkproTestContext, in particular since your IDE usually won't pick up the property we set here. But we also set it here because whether or not setting the value in DkproTestContext has an effect depends on the order in which the tests are executed. I.e. if a loading the FeatureStructureImplC class is executed while the property has not been set yet, then it is impossible for a later test to turn it on. --> <uima.v2_pretty_print_format>true</uima.v2_pretty_print_format> </systemPropertyVariables> </configuration> </plugin> </plugins> </pluginManagement> </build> <profiles> <profile> <id>spdx</id> <build> <plugins> <plugin> <groupId>org.spdx</groupId> <artifactId>spdx-maven-plugin</artifactId> <version>0.7.3</version> <executions> <execution> <id>build-spdx</id> <goals> <goal>createSPDX</goal> </goals> </execution> </executions> <configuration> <spdxFile>${project.build.outputDirectory}/META-INF/maven/${project.groupId}/${project.artifactId}/license.spdx</spdxFile> <excludedFilePatterns> <param>*.spdx</param> </excludedFilePatterns> <!-- See documentation below for additional configuration --> </configuration> </plugin> </plugins> </build> </profile> <profile> <id>run-jcasgen</id> <activation> <file> <exists>.activate-run-jcasgen</exists> </file> </activation> <build> <plugins> <plugin> <!--generate types dynamically --> <groupId>org.apache.uima</groupId> <artifactId>jcasgen-maven-plugin</artifactId> <version>${uima.version}</version> <configuration> <limitToProject>true</limitToProject> <typeSystemIncludes> <include>src/main/resources/desc/type/**/*.xml</include> </typeSystemIncludes> <typeSystemExcludes> <exclude>src/main/resources/desc/type/**/*_customized.xml</exclude> </typeSystemExcludes> </configuration> <executions> <execution> <!--call it in the generate-source phase --> <phase>generate-sources</phase> <goals> <goal>generate</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>build-helper-maven-plugin</artifactId> <executions> <execution> <id>addToSourceFolder</id> <goals> <!--add the generated sources --> <goal>add-source</goal> </goals> <phase>process-sources</phase> <configuration> <sources> <!--default path to generated sources --> <source>${project.build.directory}/generated-sources/jcasgen</source> </sources> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>checkstyle</id> <activation> <file> <exists>src</exists> </file> </activation> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> </plugin> </plugins> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>3.3.1</version> <inherited>true</inherited> <dependencies> <dependency> <groupId>org.dkpro.core</groupId> <artifactId>dkpro-core-build</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>com.puppycrawl.tools</groupId> <artifactId>checkstyle</artifactId> <version>10.17.0</version> </dependency> </dependencies> <configuration> <!-- See: https://github.com/m2e-code-quality/m2e-code-quality/issues/117#issuecomment-380022879 --> <sourceDirectories>${project.compileSourceRoots}</sourceDirectories> <testSourceDirectories>${project.testCompileSourceRoots}</testSourceDirectories> <configLocation>dkpro-core/checkstyle.xml</configLocation> <propertyExpansion>basedir=${project.basedir}</propertyExpansion> <consoleOutput>true</consoleOutput> <failOnViolation>true</failOnViolation> <includeTestSourceDirectory>true</includeTestSourceDirectory> <includeResources>false</includeResources> <includeTestResources>false</includeTestResources> <logViolationsToConsole>true</logViolationsToConsole> <maxAllowedViolations>0</maxAllowedViolations> <violationSeverity>error</violationSeverity> </configuration> <executions> <execution> <id>checkstyle-check</id> <phase>verify</phase> <goals> <goal>check</goal> </goals> </execution> </executions> </plugin> </plugins> </pluginManagement> </build> </profile> </profiles> </project>