• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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