549 lines
24 KiB
XML
549 lines
24 KiB
XML
<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/maven-v4_0_0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<modules>
|
|
<module>javaparser-core</module>
|
|
<module>javaparser-core-testing</module>
|
|
<module>javaparser-core-testing-bdd</module>
|
|
<module>javaparser-core-generators</module>
|
|
<module>javaparser-core-metamodel-generator</module>
|
|
<module>javaparser-core-serialization</module>
|
|
<module>javaparser-symbol-solver-core</module>
|
|
<module>javaparser-symbol-solver-testing</module>
|
|
</modules>
|
|
|
|
<groupId>com.github.javaparser</groupId>
|
|
<artifactId>javaparser-parent</artifactId>
|
|
<packaging>pom</packaging>
|
|
<version>3.27.0</version>
|
|
|
|
<name>javaparser-parent</name>
|
|
<url>https://github.com/javaparser</url>
|
|
<inceptionYear>2007</inceptionYear>
|
|
<description>Java Parser and Abstract Syntax Tree for Java</description>
|
|
|
|
<licenses>
|
|
<license>
|
|
<name>GNU Lesser General Public License</name>
|
|
<url>http://www.gnu.org/licenses/lgpl-3.0.html</url>
|
|
<distribution>repo</distribution>
|
|
</license>
|
|
<license>
|
|
<name>Apache License, Version 2.0</name>
|
|
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
|
<distribution>repo</distribution>
|
|
<comments>A business-friendly OSS license</comments>
|
|
</license>
|
|
</licenses>
|
|
|
|
<developers>
|
|
<developer>
|
|
<name>Danny van Bruggen</name>
|
|
<email>hexagonaal@gmail.com</email>
|
|
<url>https://github.com/matozoid</url>
|
|
<id>matozoid</id>
|
|
</developer>
|
|
<developer>
|
|
<name>Júlio Vilmar Gesser</name>
|
|
<email>jgesser@gmail.com</email>
|
|
<id>jgesser@gmail.com</id>
|
|
</developer>
|
|
<developer>
|
|
<name>Sebastian Kirsch</name>
|
|
<email>sebastian.kirsch@immobilienscout24.de</email>
|
|
<url>https://github.com/sebastiankirsch</url>
|
|
<id>sebastiankirsch</id>
|
|
</developer>
|
|
<developer>
|
|
<name>André Rouél</name>
|
|
<url>https://github.com/before</url>
|
|
<id>before</id>
|
|
</developer>
|
|
<developer>
|
|
<name>Nicholas Smith</name>
|
|
<email>smiddypence@gmail.com</email>
|
|
<url>https://github.com/SmiddyPence</url>
|
|
<id>SmiddyPence</id>
|
|
</developer>
|
|
<developer>
|
|
<name>Federico Tomassetti</name>
|
|
<email>federico@tomassetti.me</email>
|
|
<url>https://github.com/ftomassetti</url>
|
|
<id>ftomassetti</id>
|
|
</developer>
|
|
<developer>
|
|
<name>Didier Villevalois</name>
|
|
<email>ptitjes@free.fr</email>
|
|
<url>https://github.com/ptitjes</url>
|
|
<id>ptitjes</id>
|
|
</developer>
|
|
<developer>
|
|
<name>Roger Howell</name>
|
|
<url>https://github.com/MysterAitch</url>
|
|
<id>MysterAitch</id>
|
|
</developer>
|
|
<developer>
|
|
<name>Roger Howell</name>
|
|
<url>https://github.com/MysterAitch</url>
|
|
<id>MysterAitch</id>
|
|
</developer>
|
|
<developer>
|
|
<name>Jean Pierre Lerbscher</name>
|
|
<url>https://github.com/jlerbsc</url>
|
|
<id>jlerbsc</id>
|
|
</developer>
|
|
<developer>
|
|
<name>Maarten Coene</name>
|
|
<url>https://github.com/maartenc</url>
|
|
<id>maartenc</id>
|
|
</developer>
|
|
</developers>
|
|
<contributors>
|
|
<contributor>
|
|
<name>Sebastian Kürten</name>
|
|
<email>sebastian@topobyte.de</email>
|
|
<url>https://github.com/sebkur</url>
|
|
</contributor>
|
|
<contributor>
|
|
<name>Junfei Liang</name>
|
|
<email>fly2best@gmail.com</email>
|
|
<url>https://github.com/fly2best</url>
|
|
</contributor>
|
|
<contributor>
|
|
<name>Jarkko Miettinen</name>
|
|
<url>https://github.com/jmiettinen</url>
|
|
</contributor>
|
|
<contributor>
|
|
<name>Alexey Morozov</name>
|
|
<email>morozov@altlinux.org</email>
|
|
<url>https://github.com/amorozov</url>
|
|
</contributor>
|
|
<contributor>
|
|
<name>Donny Nadolny</name>
|
|
<email>donny.nadolny@gmail.com</email>
|
|
<url>https://github.com/dnadolny</url>
|
|
</contributor>
|
|
<contributor>
|
|
<name>Raquel Pau</name>
|
|
<email>raquelpau@gmail.com</email>
|
|
<url>https://github.com/rpau</url>
|
|
</contributor>
|
|
<contributor>
|
|
<name>Chao Shi</name>
|
|
<email>stepinto@live.com</email>
|
|
<url>https://github.com/stepinto</url>
|
|
</contributor>
|
|
<contributor>
|
|
<name>Michael Schieder</name>
|
|
<email>michael.schieder@gmail.com</email>
|
|
<url>https://github.com/mschieder</url>
|
|
</contributor>
|
|
<contributor>
|
|
<name>CRUZ Maximilien</name>
|
|
<email>maximilien.cruz@gmail.com</email>
|
|
<url>https://github.com/DeepSnowNeeL</url>
|
|
</contributor>
|
|
</contributors>
|
|
|
|
<properties>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<java.version>1.8</java.version>
|
|
<byte-buddy.version>1.17.5</byte-buddy.version>
|
|
<argLine>-javaagent:'${settings.localRepository}/net/bytebuddy/byte-buddy-agent/${byte-buddy.version}/byte-buddy-agent-${byte-buddy.version}.jar'</argLine>
|
|
<build.timestamp>2025-06-14T00:00:00Z</build.timestamp>
|
|
<jacoco.javaagent/>
|
|
</properties>
|
|
|
|
<scm>
|
|
<connection>scm:git:git://github.com/javaparser/javaparser.git</connection>
|
|
<developerConnection>scm:git:git@github.com:javaparser/javaparser.git</developerConnection>
|
|
<url>https://github.com/javaparser/javaparser.git</url>
|
|
<tag>HEAD</tag>
|
|
</scm>
|
|
|
|
<issueManagement>
|
|
<system>GitHub Issue Tracker</system>
|
|
<url>https://github.com/javaparser/javaparser/issues</url>
|
|
</issueManagement>
|
|
|
|
<distributionManagement>
|
|
<!-- https://docs.github.com/en/actions/guides/publishing-java-packages-with-maven#publishing-packages-to-the-maven-central-repository -->
|
|
<!-- https://blog.sonatype.com/what-publishers-need-to-know-about-migrating-from-jcenter-/-bintray-to-the-central-repository -->
|
|
<!-- New: Publishing directly to Sonatype OSSRH (OSS Repository Hosting), for release to Maven Central -->
|
|
<!-- URLs available from: https://central.sonatype.org/pages/ossrh-guide.html#accessing-repositories -->
|
|
<snapshotRepository>
|
|
<id>ossrh</id>
|
|
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
|
|
</snapshotRepository>
|
|
<repository>
|
|
<id>ossrh</id>
|
|
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
|
|
</repository>
|
|
</distributionManagement>
|
|
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<configuration>
|
|
<source>${java.version}</source>
|
|
<target>${java.version}</target>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
<pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>com.helger.maven</groupId>
|
|
<artifactId>ph-javacc-maven-plugin</artifactId>
|
|
<version>4.1.5</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-clean-plugin</artifactId>
|
|
<version>3.5.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.14.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-gpg-plugin</artifactId>
|
|
<version>3.2.7</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-install-plugin</artifactId>
|
|
<version>3.1.4</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-jar-plugin</artifactId>
|
|
<version>3.4.2</version>
|
|
</plugin>
|
|
<plugin>
|
|
<!-- See also: https://central.sonatype.org/pages/apache-maven.html#performing-a-release-deployment-with-the-maven-release-plugin -->
|
|
<!-- Plugin for preparing and performing a release (to ossrh / maven central). -->
|
|
<!-- TODO: Consider switching to using `mvn versions:set` and org.sonatype.plugins:nexus-staging-maven-plugin -->
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-release-plugin</artifactId>
|
|
<version>3.1.1</version>
|
|
<configuration>
|
|
<!-- When updating versions during release, synchronise versions of sub-modules with the parent-pom. -->
|
|
<autoVersionSubmodules>true</autoVersionSubmodules>
|
|
<!-- During release:prepare, update the readme (via the "run-release" profile) and add it to git. -->
|
|
<preparationGoals>-Prun-release clean verify scm:add scm:checkin</preparationGoals>
|
|
<!-- During release:perform, enable the release-specific profiles -->
|
|
<releaseProfiles>run-release</releaseProfiles>
|
|
<!-- Disable pushing of changes (i.e. false, for local testing) -->
|
|
<pushChanges>false</pushChanges>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<version>3.3.1</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-scm-plugin</artifactId>
|
|
<version>2.1.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-source-plugin</artifactId>
|
|
<version>3.3.1</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.jacoco</groupId>
|
|
<artifactId>jacoco-maven-plugin</artifactId>
|
|
<version>0.8.13</version>
|
|
<configuration>
|
|
<includes>
|
|
<include>
|
|
com/github/javaparser/**
|
|
</include>
|
|
</includes>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>jacoco-initialize</id>
|
|
<goals>
|
|
<goal>prepare-agent</goal>
|
|
</goals>
|
|
<configuration>
|
|
<propertyName>jacoco.javaagent</propertyName>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>jacoco-report</id>
|
|
<phase>test</phase>
|
|
<goals>
|
|
<goal>report-aggregate</goal>
|
|
</goals>
|
|
<configuration>
|
|
<outputDirectory>${project.reporting.outputDirectory}/jacoco</outputDirectory>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-javadoc-plugin</artifactId>
|
|
<version>3.11.2</version>
|
|
<configuration>
|
|
<source>${java.version}</source>
|
|
<additionalOptions>
|
|
<!-- doclint requires perfect JavaDoc, and fails the generation of javadoc on even minor problems -->
|
|
<!-- Ideally we will have perfectly formatted javadoc, but for now just disable it. -->
|
|
<additionalOption>-Xdoclint:none</additionalOption>
|
|
</additionalOptions>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-site-plugin</artifactId>
|
|
<version>3.21.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>biz.aQute.bnd</groupId>
|
|
<artifactId>bnd-maven-plugin</artifactId>
|
|
<version>6.4.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>3.5.2</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>exec-maven-plugin</artifactId>
|
|
<version>3.5.1</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-deploy-plugin</artifactId>
|
|
<version>3.1.4</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>build-helper-maven-plugin</artifactId>
|
|
<version>3.6.1</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>templating-maven-plugin</artifactId>
|
|
<version>3.0.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>3.8.1</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>versions-maven-plugin</artifactId>
|
|
<version>2.18.0</version>
|
|
<configuration>
|
|
<generateBackupPoms>false</generateBackupPoms>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>3.6.0</version>
|
|
<configuration>
|
|
<configLocation>dev-files/JavaParser-CheckStyle.xml</configLocation>
|
|
<logViolationsToConsole>true</logViolationsToConsole>
|
|
<consoleOutput>true</consoleOutput>
|
|
</configuration>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.puppycrawl.tools</groupId>
|
|
<artifactId>checkstyle</artifactId>
|
|
<version>10.25.0</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.diffplug.spotless</groupId>
|
|
<artifactId>spotless-maven-plugin</artifactId>
|
|
<!-- This is the last version with Java 8 support -->
|
|
<version>2.44.5</version>
|
|
<configuration>
|
|
<java>
|
|
<!-- google-java-format, but better: see https://github.com/palantir/palantir-java-format -->
|
|
<palantirJavaFormat/>
|
|
</java>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
</build>
|
|
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.javassist</groupId>
|
|
<artifactId>javassist</artifactId>
|
|
<version>3.30.2-GA</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.guava</groupId>
|
|
<artifactId>guava</artifactId>
|
|
<version>33.4.8-jre</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.checkerframework</groupId>
|
|
<artifactId>checker-qual</artifactId>
|
|
<version>3.49.4</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.hamcrest</groupId>
|
|
<artifactId>hamcrest</artifactId>
|
|
<version>3.0</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.junit</groupId>
|
|
<artifactId>junit-bom</artifactId>
|
|
<version>5.13.1</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-inline</artifactId>
|
|
<version>4.11.0</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>net.bytebuddy</groupId>
|
|
<artifactId>byte-buddy</artifactId>
|
|
<version>${byte-buddy.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>net.bytebuddy</groupId>
|
|
<artifactId>byte-buddy-agent</artifactId>
|
|
<version>${byte-buddy.version}</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
|
|
|
|
<profiles>
|
|
<profile>
|
|
<!-- doclint requires perfect JavaDoc, and fails the generation of javadoc on even minor problems -->
|
|
<!-- Ideally we will have perfectly formatted javadoc, but for now just disable it. -->
|
|
<id>doclint-java8-disable</id>
|
|
<activation>
|
|
<jdk>[1.8,)</jdk>
|
|
</activation>
|
|
<!-- FIXME: Can this be removed? It appears to be a no-op, with be no action to be done when activated (e.g. set a parameter, configure a plugin, etc.) -->
|
|
</profile>
|
|
<profile>
|
|
<!-- This profile is intended for use when preparing and deploying a release. -->
|
|
<id>run-release</id>
|
|
<build>
|
|
<plugins>
|
|
<!-- Update the readme with the new version number, but only when compiling a new release. -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>copy-readme</id>
|
|
<phase>compile</phase>
|
|
<goals>
|
|
<goal>copy-resources</goal>
|
|
</goals>
|
|
<configuration>
|
|
<outputDirectory>${project.basedir}</outputDirectory>
|
|
<resources>
|
|
<resource>
|
|
<directory>${project.basedir}/doc</directory>
|
|
<includes>
|
|
<include>readme.md</include>
|
|
</includes>
|
|
<filtering>true</filtering>
|
|
</resource>
|
|
</resources>
|
|
<encoding>${project.build.sourceEncoding}</encoding>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<!-- Commit the updated readme file to the repo. -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-scm-plugin</artifactId>
|
|
<configuration>
|
|
<includes>readme.md</includes>
|
|
<message>[maven-release-plugin] update readme</message>
|
|
<!-- disabled here, as it will be pushed separately -->
|
|
<!-- (either once the release has finished being prepared, or manually) -->
|
|
<pushChanges>false</pushChanges>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
<!-- Source plugin - used to include source code within the release JAR -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-source-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-sources</id>
|
|
<goals>
|
|
<goal>jar-no-fork</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<!-- Javadoc plugin - used to include javadoc within the release JAR -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-javadoc-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-javadocs</id>
|
|
<goals>
|
|
<goal>jar</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<!-- GPG plugin - used to sign the release JAR before pushing to OSSRH -->
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-gpg-plugin</artifactId>
|
|
<version>3.2.7</version>
|
|
<executions>
|
|
<execution>
|
|
<id>sign-artifacts</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>sign</goal>
|
|
</goals>
|
|
<configuration>
|
|
<!-- Prevent `gpg` from using pinentry programs -->
|
|
<gpgArguments>
|
|
<arg>--pinentry-mode</arg>
|
|
<arg>loopback</arg>
|
|
</gpgArguments>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|