1<?xml version="1.0" encoding="UTF-8"?> 2<!-- 3 ~ Copyright 2015 Google Inc. 4 ~ 5 ~ Licensed under the Apache License, Version 2.0 (the "License"); 6 ~ you may not use this file except in compliance with the License. 7 ~ You may obtain a copy of the License at 8 ~ 9 ~ http://www.apache.org/licenses/LICENSE-2.0 10 ~ 11 ~ Unless required by applicable law or agreed to in writing, software 12 ~ distributed under the License is distributed on an "AS IS" BASIS, 13 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 ~ See the License for the specific language governing permissions and 15 ~ limitations under the License. 16 --> 17 18<project xmlns="http://maven.apache.org/POM/4.0.0" 19 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 20 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 21 <modelVersion>4.0.0</modelVersion> 22 23 <groupId>com.google.googlejavaformat</groupId> 24 <artifactId>google-java-format-parent</artifactId> 25 <packaging>pom</packaging> 26 <version>HEAD-SNAPSHOT</version> 27 28 <modules> 29 <module>core</module> 30 <module>eclipse_plugin</module> 31 </modules> 32 33 <name>Google Java Format Parent</name> 34 35 <description> 36 A Java source code formatter that follows Google Java Style. 37 </description> 38 39 <url>https://github.com/google/google-java-format</url> 40 41 <inceptionYear>2015</inceptionYear> 42 43 <organization> 44 <name>Google Inc.</name> 45 <url>http://www.google.com/</url> 46 </organization> 47 48 <licenses> 49 <license> 50 <name>The Apache Software License, Version 2.0</name> 51 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> 52 <distribution>repo</distribution> 53 </license> 54 </licenses> 55 56 <developers> 57 <developer> 58 <id>jdd</id> 59 <name>John DeTreville</name> 60 <email>jdd@google.com</email> 61 <organization>Google Inc.</organization> 62 <organizationUrl>http://www.google.com/</organizationUrl> 63 <roles> 64 <role>owner</role> 65 <role>developer</role> 66 </roles> 67 <timezone>-8</timezone> 68 </developer> 69 </developers> 70 71 <scm> 72 <url>http://github.com/google/google-java-format/</url> 73 <connection>scm:git:git://github.com/google/google-java-format.git</connection> 74 <developerConnection>scm:git:ssh://git@github.com/google/google-java-format.git</developerConnection> 75 <tag>HEAD</tag> 76 </scm> 77 78 <issueManagement> 79 <system>GitHub Issues</system> 80 <url>http://github.com/google/google-java-format/issues</url> 81 </issueManagement> 82 83 <prerequisites> 84 <maven>3.0.3</maven> 85 </prerequisites> 86 87 <properties> 88 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 89 <java.version>1.8</java.version> 90 <guava.version>31.0.1-jre</guava.version> 91 <truth.version>1.1.3</truth.version> 92 <checker.version>3.21.2</checker.version> 93 <errorprone.version>2.11.0</errorprone.version> 94 <auto-value.version>1.9</auto-value.version> 95 <auto-service.version>1.0.1</auto-service.version> 96 <maven-javadoc-plugin.version>3.3.1</maven-javadoc-plugin.version> 97 <maven-source-plugin.version>3.2.1</maven-source-plugin.version> 98 </properties> 99 100 <dependencyManagement> 101 <dependencies> 102 <!-- Required runtime dependencies --> 103 <dependency> 104 <groupId>com.google.guava</groupId> 105 <artifactId>guava</artifactId> 106 <version>${guava.version}</version> 107 </dependency> 108 109 <!-- Compile-time dependencies --> 110 <dependency> 111 <groupId>org.checkerframework</groupId> 112 <artifactId>checker-qual</artifactId> 113 <version>${checker.version}</version> 114 </dependency> 115 <dependency> 116 <groupId>com.google.errorprone</groupId> 117 <artifactId>error_prone_annotations</artifactId> 118 <version>${errorprone.version}</version> 119 </dependency> 120 <dependency> 121 <groupId>com.google.auto.value</groupId> 122 <artifactId>auto-value-annotations</artifactId> 123 <version>${auto-value.version}</version> 124 </dependency> 125 <dependency> 126 <groupId>com.google.auto.service</groupId> 127 <artifactId>auto-service-annotations</artifactId> 128 <version>${auto-service.version}</version> 129 </dependency> 130 131 <!-- Test dependencies --> 132 <dependency> 133 <groupId>junit</groupId> 134 <artifactId>junit</artifactId> 135 <version>4.13.2</version> 136 <scope>test</scope> 137 </dependency> 138 <dependency> 139 <groupId>com.google.guava</groupId> 140 <artifactId>guava-testlib</artifactId> 141 <version>${guava.version}</version> 142 <scope>test</scope> 143 </dependency> 144 <dependency> 145 <groupId>com.google.truth</groupId> 146 <artifactId>truth</artifactId> 147 <version>${truth.version}</version> 148 <scope>test</scope> 149 </dependency> 150 <dependency> 151 <groupId>com.google.truth.extensions</groupId> 152 <artifactId>truth-java8-extension</artifactId> 153 <version>${truth.version}</version> 154 <scope>test</scope> 155 </dependency> 156 </dependencies> 157 </dependencyManagement> 158 159 <build> 160 <pluginManagement> 161 <plugins> 162 <plugin> 163 <artifactId>maven-compiler-plugin</artifactId> 164 <version>3.9.0</version> 165 </plugin> 166 <plugin> 167 <artifactId>maven-jar-plugin</artifactId> 168 <version>3.2.2</version> 169 </plugin> 170 <plugin> 171 <artifactId>maven-source-plugin</artifactId> 172 <version>3.2.1</version> 173 </plugin> 174 <plugin> 175 <artifactId>maven-javadoc-plugin</artifactId> 176 <version>3.3.1</version> 177 </plugin> 178 <plugin> 179 <artifactId>maven-gpg-plugin</artifactId> 180 <version>3.0.1</version> 181 </plugin> 182 <plugin> 183 <groupId>org.apache.felix</groupId> 184 <artifactId>maven-bundle-plugin</artifactId> 185 <version>5.1.4</version> 186 </plugin> 187 </plugins> 188 </pluginManagement> 189 190 <plugins> 191 <plugin> 192 <artifactId>maven-compiler-plugin</artifactId> 193 <configuration> 194 <source>${java.version}</source> 195 <target>${java.version}</target> 196 <encoding>UTF-8</encoding> 197 <compilerArgs> 198 <!-- compile-time arguments for google-java-format --> 199 <arg>-XDcompilePolicy=simple</arg> 200 <arg>-Xplugin:ErrorProne</arg> 201 <arg>--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED</arg> 202 <arg>--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED</arg> 203 <arg>--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED</arg> 204 <arg>--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED</arg> 205 <arg>--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</arg> 206 <arg>--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED</arg> 207 <arg>--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED</arg> 208 </compilerArgs> 209 <annotationProcessorPaths> 210 <path> 211 <groupId>com.google.errorprone</groupId> 212 <artifactId>error_prone_core</artifactId> 213 <version>${errorprone.version}</version> 214 </path> 215 <path> 216 <groupId>com.google.auto.value</groupId> 217 <artifactId>auto-value</artifactId> 218 <version>${auto-value.version}</version> 219 </path> 220 <path> 221 <groupId>com.google.auto.service</groupId> 222 <artifactId>auto-service</artifactId> 223 <version>${auto-service.version}</version> 224 </path> 225 </annotationProcessorPaths> 226 </configuration> 227 </plugin> 228 <plugin> 229 <groupId>org.apache.maven.plugins</groupId> 230 <artifactId>maven-jar-plugin</artifactId> 231 <configuration> 232 <archive> 233 <manifest> 234 <mainClass>com.google.googlejavaformat.java.Main</mainClass> 235 </manifest> 236 </archive> 237 </configuration> 238 </plugin> 239 <plugin> 240 <groupId>org.apache.maven.plugins</groupId> 241 <artifactId>maven-source-plugin</artifactId> 242 <executions> 243 <execution> 244 <id>attach-sources</id> 245 <goals> 246 <goal>jar</goal> 247 </goals> 248 </execution> 249 </executions> 250 </plugin> 251 <plugin> 252 <groupId>org.apache.maven.plugins</groupId> 253 <artifactId>maven-javadoc-plugin</artifactId> 254 <version>3.3.1</version> 255 <configuration> 256 <doclint>none</doclint> 257 </configuration> 258 <executions> 259 <execution> 260 <id>attach-javadocs</id> 261 <goals> 262 <goal>jar</goal> 263 </goals> 264 </execution> 265 </executions> 266 </plugin> 267 <plugin> 268 <groupId>org.apache.maven.plugins</groupId> 269 <artifactId>maven-surefire-plugin</artifactId> 270 <version>2.22.2</version> 271 <configuration> 272 <!-- set heap size to work around http://github.com/travis-ci/travis-ci/issues/3396 --> 273 <argLine> 274 -Xmx1024m 275 --add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED 276 --add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED 277 --add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED 278 --add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED 279 --add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED 280 --add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED 281 --add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED 282 --add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED 283 --add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED 284 --add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED 285 </argLine> 286 </configuration> 287 </plugin> 288 </plugins> 289 </build> 290 291 <distributionManagement> 292 <snapshotRepository> 293 <id>sonatype-nexus-snapshots</id> 294 <name>Sonatype Nexus Snapshots</name> 295 <url>https://oss.sonatype.org/content/repositories/snapshots/</url> 296 </snapshotRepository> 297 <repository> 298 <id>sonatype-nexus-staging</id> 299 <name>Nexus Release Repository</name> 300 <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url> 301 </repository> 302 </distributionManagement> 303 304 <profiles> 305 <profile> 306 <id>sonatype-oss-release</id> 307 <build> 308 <plugins> 309 <plugin> 310 <groupId>org.apache.maven.plugins</groupId> 311 <artifactId>maven-source-plugin</artifactId> 312 <version>${maven-source-plugin.version}</version> 313 <executions> 314 <execution> 315 <id>attach-sources</id> 316 <goals> 317 <goal>jar-no-fork</goal> 318 </goals> 319 </execution> 320 </executions> 321 </plugin> 322 <plugin> 323 <groupId>org.apache.maven.plugins</groupId> 324 <artifactId>maven-javadoc-plugin</artifactId> 325 <version>${maven-javadoc-plugin.version}</version> 326 <executions> 327 <execution> 328 <id>attach-javadocs</id> 329 <goals> 330 <goal>jar</goal> 331 </goals> 332 </execution> 333 </executions> 334 </plugin> 335 <plugin> 336 <groupId>org.apache.maven.plugins</groupId> 337 <artifactId>maven-gpg-plugin</artifactId> 338 <version>3.0.1</version> 339 <executions> 340 <execution> 341 <id>sign-artifacts</id> 342 <phase>verify</phase> 343 <goals> 344 <goal>sign</goal> 345 </goals> 346 </execution> 347 </executions> 348 </plugin> 349 </plugins> 350 </build> 351 </profile> 352 </profiles> 353</project> 354