error_prone_parent
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>com.google.errorprone</groupId> <artifactId>error_prone_parent</artifactId> <version>2.40.0</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <!-- Copyright 2011 The Error Prone Authors. 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> <name>Error Prone parent POM</name> <groupId>com.google.errorprone</groupId> <artifactId>error_prone_parent</artifactId> <version>2.40.0</version> <packaging>pom</packaging> <description>Error Prone is a static analysis tool for Java that catches common programming mistakes at compile-time.</description> <url>https://errorprone.info</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <guava.version>33.4.0-jre</guava.version> <gwt.version>2.10.0</gwt.version> <truth.version>1.4.0</truth.version> <autoservice.version>1.0.1</autoservice.version> <autovalue.version>1.9</autovalue.version> <junit.version>4.13.2</junit.version> <dataflow.version>3.41.0-eisop1</dataflow.version> <mockito.version>4.9.0</mockito.version> <compile.testing.version>0.21.0</compile.testing.version> <caffeine.version>3.0.5</caffeine.version> <flogger.version>0.7.4</flogger.version> <maven-javadoc-plugin.version>3.11.2</maven-javadoc-plugin.version> <maven-source-plugin.version>3.2.1</maven-source-plugin.version> <central-publishing-maven-plugin.version>0.8.0</central-publishing-maven-plugin.version> <protobuf.version>3.25.5</protobuf.version> <grpc.version>1.43.3</grpc.version> <jspecify.version>1.0.0</jspecify.version> <google-java-format.version>1.27.0</google-java-format.version> </properties> <organization> <name>Google LLC</name> <url>https://www.google.com</url> </organization> <developers> <developer> <name>Eddie Aftandilian</name> </developer> </developers> <modules> <module>check_api</module> <module>test_helpers</module> <module>core</module> <module>annotation</module> <module>annotations</module> <module>type_annotations</module> <module>docgen</module> <module>docgen_processor</module> <module>refaster</module> </modules> <scm> <connection>scm:git:https://github.com/google/error-prone.git</connection> <developerConnection>scm:git:git@github.com:google/error-prone.git</developerConnection> <url>https://github.com/google/error-prone</url> </scm> <licenses> <license> <name>Apache 2.0</name> <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> </license> </licenses> <build> <resources> <resource> <directory>src/main/java</directory> <includes> <include>**/*.properties</include> <include>**/*.binarypb</include> </includes> </resource> </resources> <testResources> <testResource> <directory>src/test/java</directory> <includes> <include>**/testdata/**</include> </includes> </testResource> </testResources> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>2.1</version> <configuration> <dependencyReducedPomLocation>${project.build.directory}/dependency-reduced-pom.xml</dependencyReducedPomLocation> </configuration> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <id>enforce-maven</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireMavenVersion> <version>3.0.5</version> </requireMavenVersion> </rules> </configuration> </execution> </executions> </plugin> <plugin> <groupId>biz.aQute.bnd</groupId> <artifactId>bnd-maven-plugin</artifactId> <version>6.4.0</version> <executions> <execution> <id>generate-OSGi-manifest</id> <goals> <goal>bnd-process</goal> </goals> <configuration> <bnd><![CDATA[ Bundle-SymbolicName: com.google.$<replacestring;$<replacestring;${project.artifactId};^error_prone;errorprone>;_;.> Automatic-Module-Name: $<Bundle-SymbolicName> -exportcontents: com.google.errorprone* -noextraheaders: true -removeheaders: Private-Package ]]></bnd> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>3.2.2</version> <configuration> <archive> <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile> </archive> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>${maven-javadoc-plugin.version}</version> <configuration> <source>17</source> <notimestamp>true</notimestamp> <doctitle>Error Prone ${project.version} API</doctitle> <disableSourcepathUsage>true</disableSourcepathUsage> <legacyMode>true</legacyMode> <additionalOptions> <additionalOption>--add-exports=java.base/jdk.internal.javac=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED</additionalOption> <additionalOption>--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</additionalOption> </additionalOptions> <sourceFileExcludes> <sourceFileExclude>**/module-info.java</sourceFileExclude> </sourceFileExcludes> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.13.0</version> <configuration> <source>17</source> <target>17</target> <parameters /> <compilerArgs> <arg>--add-exports=java.base/jdk.internal.javac=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED</arg> <arg>--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</arg> </compilerArgs> <testExcludes> <exclude>**/testdata/**</exclude> </testExcludes> </configuration> <executions> <execution> <id>default-compile</id> <configuration> <compilerArgs combine.children="append"> <arg>-Xlint:-options</arg> </compilerArgs> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>2.1.2</version> <executions> <execution> <id>attach-sources</id> <phase>package</phase> <goals> <goal>jar-no-fork</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.10.0</version> <executions> <execution> <id>attach-descriptor</id> <goals> <goal>attach-descriptor</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>3.1.0</version> <configuration> <jdkToolchain> <!-- Test against the current default JDK, not the latest JDK a toolchain is registered for. On Error Prone's CI, the JDK we want to run the tests against is installed last, to make it the default on the PATH and for JAVA_HOME: https://github.com/google/error-prone/blob/master/.github/workflows/ci.yml See also Guava's similar logic here: https://github.com/google/guava/blob/781068569f0a275ac3c4bce08c9a1fe4d624048a/pom.xml#L20 --> <version>${java.specification.version}</version> </jdkToolchain> <argLine> -Xmx1g --add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED --add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED --add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED --add-opens=java.base/java.math=ALL-UNNAMED --add-opens=java.base/java.nio=ALL-UNNAMED </argLine> <trimStackTrace>false</trimStackTrace> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-toolchains-plugin</artifactId> <version>3.2.0</version> <configuration> <toolchains> <jdk> <version>25</version> </jdk> </toolchains> </configuration> <executions> <execution> <goals> <goal>toolchain</goal> </goals> </execution> </executions> </plugin> </plugins> </build> <distributionManagement> <snapshotRepository> <id>sonatype-nexus-snapshots</id> <url>https://central.sonatype.com/repository/maven-snapshots/</url> </snapshotRepository> </distributionManagement> <profiles> <profile> <id>release</id> <build> <plugins> <plugin> <groupId>org.sonatype.central</groupId> <artifactId>central-publishing-maven-plugin</artifactId> <version>${central-publishing-maven-plugin.version}</version> <extensions>true</extensions> <configuration> <publishingServerId>central</publishingServerId> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>${maven-source-plugin.version}</version> <executions> <execution> <id>attach-sources</id> <goals> <goal>jar-no-fork</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>${maven-javadoc-plugin.version}</version> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <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> <gpgArguments> <arg>--pinentry-mode</arg> <arg>loopback</arg> </gpgArguments> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>custom-test-runtime-version</id> <activation> <property> <name>surefire.jdk-toolchain-version</name> </property> </activation> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <jdkToolchain> <version>${surefire.jdk-toolchain-version}</version> </jdkToolchain> </configuration> </plugin> </plugins> </pluginManagement> </build> </profile> </profiles> </project>