<?xml version="1.0" encoding="UTF-8"?> <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> <artifactId>pmd-lang-test</artifactId> <name>PMD language module testing utilities</name> <description> Module containing utilities to test language implementations, including parsers and ASTs. This module uses Kotlin. </description> <parent> <groupId>net.sourceforge.pmd</groupId> <artifactId>pmd</artifactId> <version>6.30.0-SNAPSHOT</version> <relativePath>../</relativePath> </parent> <build> <sourceDirectory>${project.basedir}/src/main/kotlin</sourceDirectory> <testResources> <testResource> <directory>${project.basedir}/src/test/resources</directory> </testResource> <!-- Adding kotlin files to test resources, so that checkstyle verifies the license header --> <testResource> <directory>${project.basedir}/src/main/kotlin</directory> </testResource> </testResources> <plugins> <!-- The kotlin plugin has to run before the java plugin--> <plugin> <artifactId>kotlin-maven-plugin</artifactId> <groupId>org.jetbrains.kotlin</groupId> <version>${kotlin.version}</version> <executions> <execution> <id>kotlin-compile</id> <goals> <goal>compile</goal> </goals> <phase>process-sources</phase> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <executions> <execution> <id>attach-javadocs</id> <!-- disable this execution, as we are using dokka-maven-plugin here --> <phase>none</phase> </execution> </executions> </plugin> <plugin> <groupId>org.jetbrains.dokka</groupId> <artifactId>dokka-maven-plugin</artifactId> <version>${dokka.version}</version> <executions> <execution> <phase>package</phase> <goals> <!-- once https://github.com/Kotlin/dokka/issues/294 is fixed, use goal javadocJar instead and remove the additional jar plugin execution --> <goal>dokka</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <executions> <execution> <id>kotlin-javadoc</id> <phase>package</phase> <goals> <goal>jar</goal> </goals> <configuration> <classesDirectory>${project.build.directory}/dokka/pmd-lang-test</classesDirectory> <classifier>javadoc</classifier> </configuration> </execution> </executions> </plugin> </plugins> </build> <dependencies> <dependency> <groupId>net.sourceforge.pmd</groupId> <artifactId>pmd-core</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> </dependency> <!-- the following dependencies are all scope compile, so that they can be used here in src/main and also so that they are automatically available to users of the pmd-lang-test module --> <dependency> <groupId>io.kotest</groupId> <artifactId>kotest-assertions-core-jvm</artifactId> <scope>compile</scope> </dependency> <dependency> <!-- Contains stuff like FunSpec, etc --> <groupId>io.kotest</groupId> <artifactId>kotest-runner-junit5-jvm</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.jetbrains</groupId> <artifactId>annotations</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.hamcrest</groupId> <artifactId>hamcrest</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-stdlib</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-reflect</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-stdlib-jdk8</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>org.jetbrains.kotlin</groupId> <artifactId>kotlin-test-junit</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>com.github.oowekyala.treeutils</groupId> <artifactId>tree-matchers</artifactId> <scope>compile</scope> </dependency> <dependency> <groupId>com.github.oowekyala.treeutils</groupId> <artifactId>tree-printers</artifactId> <scope>compile</scope> </dependency> </dependencies> </project>