| <?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>ktfmt</artifactId> |
| |
| <name>Ktfmt</name> |
| <description>A program that reformats Kotlin source code to comply with the common community standard for Kotlin code conventions.</description> |
| |
| <parent> |
| <groupId>com.facebook</groupId> |
| <artifactId>ktfmt-parent</artifactId> |
| <version>0.34</version> |
| </parent> |
| |
| <properties> |
| <dokka.version>0.10.1</dokka.version> |
| <kotlin.version>1.6.10</kotlin.version> |
| <kotlin.compiler.incremental>true</kotlin.compiler.incremental> |
| <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget> |
| <main.class>com.facebook.ktfmt.cli.Main</main.class> |
| </properties> |
| |
| <pluginRepositories> |
| <pluginRepository> |
| <id>jcenter</id> |
| <name>JCenter</name> |
| <url>https://jcenter.bintray.com/</url> |
| </pluginRepository> |
| </pluginRepositories> |
| |
| <build> |
| <sourceDirectory>${project.basedir}/src/main/java</sourceDirectory> |
| <testSourceDirectory>${project.basedir}/src/test/java</testSourceDirectory> |
| <plugins> |
| <plugin> |
| <groupId>org.jetbrains.kotlin</groupId> |
| <artifactId>kotlin-maven-plugin</artifactId> |
| <version>${kotlin.version}</version> |
| |
| <executions> |
| <execution> |
| <id>compile</id> |
| <goals> |
| <goal>compile</goal> |
| </goals> |
| <configuration> |
| <sourceDirs> |
| <sourceDir>${project.basedir}/src/main/java</sourceDir> |
| </sourceDirs> |
| </configuration> |
| </execution> |
| |
| <execution> |
| <id>test-compile</id> |
| <goals> |
| <goal>test-compile</goal> |
| </goals> |
| <configuration> |
| <sourceDirs> |
| <sourceDir>${project.basedir}/src/test/java</sourceDir> |
| </sourceDirs> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>3.5.1</version> |
| <configuration> |
| <source>1.8</source> |
| <target>1.8</target> |
| </configuration> |
| <executions> |
| <!-- Replacing default-compile as it is treated specially by maven --> |
| <execution> |
| <id>default-compile</id> |
| <phase>none</phase> |
| </execution> |
| <!-- Replacing default-testCompile as it is treated specially by maven --> |
| <execution> |
| <id>default-testCompile</id> |
| <phase>none</phase> |
| </execution> |
| <execution> |
| <id>java-compile</id> |
| <phase>compile</phase> |
| <goals> |
| <goal>compile</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>java-test-compile</id> |
| <phase>test-compile</phase> |
| <goals> |
| <goal>testCompile</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <version>2.6</version> |
| <configuration> |
| <archive> |
| <manifest> |
| <addClasspath>true</addClasspath> |
| <mainClass>${main.class}</mainClass> |
| </manifest> |
| </archive> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <version>2.6</version> |
| <executions> |
| <execution> |
| <id>make-assembly</id> |
| <phase>package</phase> |
| <goals> |
| <goal>single</goal> |
| </goals> |
| <configuration> |
| <archive> |
| <manifest> |
| <mainClass>${main.class}</mainClass> |
| </manifest> |
| </archive> |
| <descriptorRefs> |
| <descriptorRef>jar-with-dependencies</descriptorRef> |
| </descriptorRefs> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <dependencies> |
| <dependency> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| <version>29.0-jre</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jetbrains.kotlin</groupId> |
| <artifactId>kotlin-stdlib</artifactId> |
| <version>${kotlin.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jetbrains.kotlin</groupId> |
| <artifactId>kotlin-compiler-embeddable</artifactId> |
| <version>${kotlin.version}</version> |
| </dependency> |
| <!-- https://mvnrepository.com/artifact/net.java.dev.jna/jna --> |
| <dependency> |
| <groupId>net.java.dev.jna</groupId> |
| <artifactId>jna</artifactId> |
| <version>4.2.2</version> |
| </dependency> |
| <dependency> |
| <groupId>com.google.googlejavaformat</groupId> |
| <artifactId>google-java-format</artifactId> |
| <version>1.8</version> |
| </dependency> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <version>4.13.1</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>com.google.truth</groupId> |
| <artifactId>truth</artifactId> |
| <version>1.0</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| |
| <profiles> |
| <profile> |
| <id>release</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.sonatype.plugins</groupId> |
| <artifactId>nexus-staging-maven-plugin</artifactId> |
| <version>1.6.7</version> |
| <extensions>true</extensions> |
| <configuration> |
| <serverId>ossrh</serverId> |
| <nexusUrl>https://oss.sonatype.org/</nexusUrl> |
| <autoReleaseAfterClose>true</autoReleaseAfterClose> |
| </configuration> |
| </plugin> |
| |
| <!-- Source JAR --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-source-plugin</artifactId> |
| <version>2.2.1</version> |
| <executions> |
| <execution> |
| <id>attach-sources</id> |
| <goals> |
| <goal>jar-no-fork</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- Javadoc JAR --> |
| <!-- Dokka, Kotlin's javadoc, doesn't work on JDK 10+, so we're creating an empty javadoc jar instead. --> |
| <!-- (https://github.com/Kotlin/dokka/issues/294) --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| <configuration> |
| <classifier>javadoc</classifier> |
| <classesDirectory>${project.basedir}/non/existing/dir</classesDirectory> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- Sign artifacts --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-gpg-plugin</artifactId> |
| <version>1.6</version> |
| <executions> |
| <execution> |
| <id>sign-artifacts</id> |
| <phase>verify</phase> |
| <goals> |
| <goal>sign</goal> |
| </goals> |
| <configuration> |
| <!-- Honor -Dgpg.passphrase=... on the command line. --> |
| <gpgArguments> |
| <arg>--pinentry-mode</arg> |
| <arg>loopback</arg> |
| </gpgArguments> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| |
| <distributionManagement> |
| <snapshotRepository> |
| <id>ossrh</id> |
| <url>https://oss.sonatype.org/content/repositories/snapshots</url> |
| </snapshotRepository> |
| </distributionManagement> |
| |
| </project> |