Skip to content
Snippets Groups Projects
pom.xml 40.2 KiB
Newer Older
Luc Maisonobe's avatar
Luc Maisonobe committed
<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>
  <groupId>org.orekit</groupId>
  <artifactId>orekit</artifactId>
  <version>12.2.1</version>
  <name>OREKIT</name>
  <url>https://www.orekit.org/</url>
Luc Maisonobe's avatar
Luc Maisonobe committed

  <inceptionYear>2002</inceptionYear>
  <description>
    OREKIT is a low level space dynamics library.
Luc Maisonobe's avatar
Luc Maisonobe committed
    It provides basic elements (orbits, dates, attitude, frames ...) and
    various algorithms to handle them (conversions, analytical and numerical
    propagation, pointing ...).
  </description>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <!-- Spotbugs version higher than 4.2.3 will trigger numerous EI_EXPOSE_REP errors not handled by Orekit yet -->
    <orekit.spotbugs-maven-plugin.version>4.2.3</orekit.spotbugs-maven-plugin.version>
    <orekit.jacoco-maven-plugin.version>0.8.12</orekit.jacoco-maven-plugin.version>
    <orekit.maven-bundle-plugin.version>5.1.9</orekit.maven-bundle-plugin.version>
    <orekit.maven-changes-plugin.version>2.12.1</orekit.maven-changes-plugin.version>
    <orekit.maven-checkstyle-plugin.version>3.4.0</orekit.maven-checkstyle-plugin.version>
    <!-- Checkstyle 9.3 seems to be the last version usable with JDK 8 -->
    <orekit.checkstyle.version>9.3</orekit.checkstyle.version>
    <orekit.maven-clean-plugin.version>3.3.2</orekit.maven-clean-plugin.version>
    <orekit.maven-compiler-plugin.version>3.13.0</orekit.maven-compiler-plugin.version>
    <orekit.maven-javadoc-plugin.version>3.7.0</orekit.maven-javadoc-plugin.version>
    <orekit.maven-jar-plugin.version>3.4.1</orekit.maven-jar-plugin.version>
    <orekit.maven-jxr-plugin.version>3.4.0</orekit.maven-jxr-plugin.version>
Luc Maisonobe's avatar
Luc Maisonobe committed
    <orekit.plantuml-maven-plugin.version>1.2</orekit.plantuml-maven-plugin.version>
    <orekit.plantuml.version>1.2024.7</orekit.plantuml.version>
    <orekit.maven-resources-plugin.version>3.3.1</orekit.maven-resources-plugin.version>
    <orekit.maven-site-plugin.version>3.12.1</orekit.maven-site-plugin.version>
    <orekit.maven-project-info-reports-plugin.version>3.6.0</orekit.maven-project-info-reports-plugin.version>
    <orekit.maven-wagon-ssh-external-plugin.version>3.5.3</orekit.maven-wagon-ssh-external-plugin.version>
    <orekit.maven-source-plugin.version>3.3.1</orekit.maven-source-plugin.version>
Evan Ward's avatar
Evan Ward committed
    <!-- Surefire 2.22.2 is the last to support CentOS/RedHat 7 due to
         https://issues.apache.org/jira/browse/SUREFIRE-1628 -->
    <orekit.maven-surefire-plugin.version>2.22.2</orekit.maven-surefire-plugin.version>
    <orekit.maven-surefire-report-plugin.version>3.2.1</orekit.maven-surefire-report-plugin.version>
    <!-- Mockito 4.11.0 is the last supported version with java 8
         https://github.com/mockito/mockito/releases -->
    <orekit.mockito-core.version>4.11.0</orekit.mockito-core.version>
    <orekit.jgit.buildnumber.version>1.2.12</orekit.jgit.buildnumber.version>
    <orekit.build-helper-maven-plugin.version>3.6.0</orekit.build-helper-maven-plugin.version>
    <orekit.nexus-staging-maven-plugin.version>1.7.0</orekit.nexus-staging-maven-plugin.version>
    <orekit.maven-gpg-plugin.version>3.2.4</orekit.maven-gpg-plugin.version>
    <orekit.maven-install-plugin.version>3.1.2</orekit.maven-install-plugin.version>
    <orekit.mathjax.config>&lt;script type=&quot;text/x-mathjax-config&quot;&gt;MathJax.Hub.Config({ TeX: { extensions: [&quot;autoload.js&quot;]}});&lt;/script&gt;</orekit.mathjax.config>
Luc Maisonobe's avatar
Luc Maisonobe committed
    <orekit.mathjax.enable>&lt;script type=&quot;text/javascript&quot; src=&quot;https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js?config=TeX-AMS_CHTML&quot;&gt;&lt;/script&gt;</orekit.mathjax.enable>
    <orekit.hipparchus.version>3.1</orekit.hipparchus.version>
    <orekit.junit.version>5.11.2</orekit.junit.version>
    <orekit.hamcrest.version>3.0</orekit.hamcrest.version>
    <orekit.compiler.source>1.8</orekit.compiler.source>
    <orekit.compiler.target>1.8</orekit.compiler.target>
Luc Maisonobe's avatar
Luc Maisonobe committed
    <orekit.implementation.build>${git.revision}; ${maven.build.timestamp}</orekit.implementation.build>
    <tools.jar.dir>${java.home}/../lib/</tools.jar.dir>
    <tools.jar.path>${tools.jar.dir}/tools.jar</tools.jar.path>
Luc Maisonobe's avatar
Luc Maisonobe committed
  </properties>
Luc Maisonobe's avatar
Luc Maisonobe committed
  <developers>
    <developer>
      <name>Luc Maisonobe</name>
      <id>luc</id>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <name>Bryan Cazabonne</name>
      <id>bryan</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <name>Thierry Ceolin</name>
      <id>thierry</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <name>Vincent Cucchietti</name>
      <id>vincent</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
Luc Maisonobe's avatar
Luc Maisonobe committed
    <developer>
      <name>Romain Di Costanzo</name>
      <id>romain</id>
      <roles>
        <role>developer</role>
      </roles>
Luc Maisonobe's avatar
Luc Maisonobe committed
    </developer>
    <developer>
      <name>Romain Garmier</name>
      <roles>
        <role>developer</role>
      </roles>
Luc Maisonobe's avatar
Luc Maisonobe committed
    </developer>
    <developer>
      <name>Hank Grabowski</name>
      <id>hankg</id>
      <roles>
        <role>developer</role>
      </roles>
Luc Maisonobe's avatar
Luc Maisonobe committed
    </developer>
    <developer>
      <name>Maxime Journot</name>
      <id>maxime</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
Luc Maisonobe's avatar
Luc Maisonobe committed
    <developer>
      <name>Fabien Maussion</name>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <name>Pascal Parraud</name>
      <id>pascal</id>
      <roles>
        <role>developer</role>
      </roles>
Luc Maisonobe's avatar
Luc Maisonobe committed
    </developer>
    <developer>
      <name>V&#233;ronique Pommier-Maurussane</name>
Luc Maisonobe's avatar
Luc Maisonobe committed
      <id>v&#233;ronique</id>
      <roles>
        <role>developer</role>
      </roles>
Luc Maisonobe's avatar
Luc Maisonobe committed
    </developer>
    <developer>
      <name>Guylaine Prat</name>
      <id>guylaine</id>
      <roles>
        <role>developer</role>
      </roles>
Luc Maisonobe's avatar
Luc Maisonobe committed
    </developer>
Luc Maisonobe's avatar
Luc Maisonobe committed
    <developer>
      <name>Aude Privat</name>
      <id>aude</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <name>Bruno Revelin</name>
      <id>bruno</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <name>Thomas Neidhart</name>
      <id>thomas</id>
      <roles>
        <role>developer</role>
      </roles>
Luc Maisonobe's avatar
Luc Maisonobe committed
    </developer>
    <developer>
      <name>Romain Serra</name>
      <id>serrof</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
Luc Maisonobe's avatar
Luc Maisonobe committed
    <developer>
      <name>Evan Ward</name>
      <id>evan</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <name>Yannick Jeandroz</name>
      <id>yannick</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <name>Cl&#233;ment Jonglez</name>
      <id>clement</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
    <developer>
      <name>Mark Rutten</name>
      <id>markrutten</id>
      <roles>
        <role>developer</role>
      </roles>
    </developer>
Luc Maisonobe's avatar
Luc Maisonobe committed
  </developers>

  <contributors>
    <contributor>
      <name>Roberto Alacevich</name>
    </contributor>
    <contributor>
      <name>Albert Alcarraz Garc&#237;a</name>
    </contributor>
    <contributor>
      <name>Daniel Aguilar Taboada</name>
    </contributor>
    <contributor>
      <name>Julien Asquier</name>
    </contributor>
    <contributor>
      <name>Louis Aucouturier</name>
    </contributor>
    <contributor>
      <name>Rafael Ayala</name>
    </contributor>
      <name>Lucian B&#259;rbulescu</name>
    <contributor>
      <name>Julie Bayard</name>
    </contributor>
    <contributor>
      <name>Petre Bazavan</name>
    </contributor>
    <contributor>
      <name>Laurene Beauvalet</name>
    </contributor>
    <contributor>
      <name>Nicolas Bernard</name>
    </contributor>
    <contributor>
      <name>Espen Bj&#248;rntvedt</name>
      <name>Paul Cefola</name>
    </contributor>
    <contributor>
      <name>Elisabet Cid-Borobia</name>
    </contributor>
    <contributor>
      <name>Francesco Coccoluto</name>
    </contributor>
    <contributor>
      <name>Sébastien Dinot</name>
    </contributor>
    <contributor>
      <name>&#201;douard Delente</name>
    </contributor>
    <contributor>
      <name>Rapha&#235;l Ferm&#233;</name>
    </contributor>
    <contributor>
      <name>Christine Fernandez-Martin</name>
    </contributor>
Romain Serra's avatar
Romain Serra committed
    <contributor>
      <name>Alberto Ferrero</name>
    </contributor>
    <contributor>
      <name>Mikael Fillastre</name>
    </contributor>
    <contributor>
      <name>Andrea Fiorentino</name>
    </contributor>
    <contributor>
      <name>Alberto Foss&#224;</name>
    </contributor>
Romain Serra's avatar
Romain Serra committed
    <contributor>
      <name>Laura Garcia</name>
    </contributor>
    <contributor>
      <name>Dorian Gegout</name>
    </contributor>
    <contributor>
      <name>Lucas Girodet</name>
    </contributor>
    <contributor>
      <name>Andrew Goetz</name>
    </contributor>
    <contributor>
    </contributor>
    <contributor>
      <name>Brad Hards</name>
    </contributor>
    <contributor>
      <name>Romaric Her</name>
    </contributor>
    <contributor>
      <name>Jonathan Hood</name>
    </contributor>
    <contributor>
      <name>James Housden</name>
    </contributor>
    <contributor>
      <name>Shiva Iyer</name>
    </contributor>
    <contributor>
      <name>Dimuthu Jayasingha</name>
    </contributor>
    <contributor>
      <name>Fran&#231;ois-Xavier Laffont</name>
    </contributor>
Evan Ward's avatar
Evan Ward committed
    <contributor>
      <name>Anne-Laure Lugan</name>
    </contributor>
    <contributor>
      <name>Lukas Matt</name>
    </contributor>
Romain Serra's avatar
Romain Serra committed
    <contributor>
      <name>Tanner Mills</name>
    </contributor>
    <contributor>
      <name>Vincent Mouraux</name>
    </contributor>
    <contributor>
      <name>Theo Nguyen</name>
    </contributor>
      <name>Lars N&#230;sbye Christensen</name>
    <contributor>
      <name>Emmanuel Papanagiotou</name>
    </contributor>
    <contributor>
      <name>Thomas Paulet</name>
    </contributor>
    <contributor>
      <name>Ga&#235;tan Pierre</name>
    </contributor>
    <contributor>
      <name>Steven Ports</name>
    </contributor>
    <contributor>
      <name>Joseph Reed</name>
    </contributor>
    <contributor>
      <name>Silvia R&#237;os Berganti&#241;os</name>
    </contributor>
    <contributor>
      <name>Francesco Rocca</name>
    </contributor>
    <contributor>
      <name>Mathieu Rom&#233;ro</name>
    </contributor>
    <contributor>
      <name>Li Rongwang</name>
    </contributor>
    <contributor>
      <name>Chiara Rusconi</name>
    </contributor>
    <contributor>
      <name>Beatriz Salazar Garc&#237;a</name>
    </contributor>
    <contributor>
      <name>Pascal Sauer</name>
    </contributor>
    <contributor>
      <name>Christopher Schank</name>
    </contributor>
    <contributor>
      <name>Gabriele Serafini</name>
    </contributor>
    <contributor>
      <name>David Soulard</name>
    </contributor>
    <contributor>
      <name>Derek Strobel</name>
    </contributor>
      <name>Ioanna Stypsanelli</name>
    </contributor>
    <contributor>
      <name>Michael Turner</name>
    <contributor>
      <name>Sofia Urbina</name>
    </contributor>
    <contributor>
      <name>Jean-Baptiste Valet</name>
    </contributor>
    <contributor>
      <name>M&#233;lina Vanel</name>
    </contributor>
  </contributors>
Luc Maisonobe's avatar
Luc Maisonobe committed
  <organization>
    <name>CS GROUP</name>
    <url>https://www.csgroup.eu/</url>
Luc Maisonobe's avatar
Luc Maisonobe committed
  </organization>
Luc Maisonobe's avatar
Luc Maisonobe committed

  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
    </license>
  </licenses>

    <connection>scm:git:https://gitlab.orekit.org/orekit/orekit.git</connection>
Evan Ward's avatar
Evan Ward committed
    <developerConnection>scm:git:ssh://git@gitlab.orekit.org/orekit/orekit.git</developerConnection>
    <url>https://gitlab.orekit.org/orekit/orekit/tree/master</url>
      <system>Gitlab</system>
      <url>https://gitlab.orekit.org/orekit/orekit/issues</url>
  <dependencies>
Evan Ward's avatar
Evan Ward committed
      <groupId>org.hipparchus</groupId>
      <artifactId>hipparchus-core</artifactId>
      <version>${orekit.hipparchus.version}</version>
      <type>jar</type>
      <optional>false</optional>
    </dependency>
    <dependency>
Evan Ward's avatar
Evan Ward committed
      <groupId>org.hipparchus</groupId>
      <artifactId>hipparchus-geometry</artifactId>
      <version>${orekit.hipparchus.version}</version>
    </dependency>
    <dependency>
Evan Ward's avatar
Evan Ward committed
      <groupId>org.hipparchus</groupId>
      <artifactId>hipparchus-ode</artifactId>
      <version>${orekit.hipparchus.version}</version>
      <type>jar</type>
      <optional>false</optional>
    </dependency>
    <dependency>
Evan Ward's avatar
Evan Ward committed
      <groupId>org.hipparchus</groupId>
      <artifactId>hipparchus-fitting</artifactId>
      <version>${orekit.hipparchus.version}</version>
      <type>jar</type>
      <optional>false</optional>
    </dependency>
    <dependency>
Evan Ward's avatar
Evan Ward committed
      <groupId>org.hipparchus</groupId>
      <artifactId>hipparchus-optim</artifactId>
      <version>${orekit.hipparchus.version}</version>
      <type>jar</type>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>org.hipparchus</groupId>
      <artifactId>hipparchus-filtering</artifactId>
      <version>${orekit.hipparchus.version}</version>
      <type>jar</type>
Evan Ward's avatar
Evan Ward committed
      <optional>false</optional>
    </dependency>
    <dependency>
Evan Ward's avatar
Evan Ward committed
      <groupId>org.hipparchus</groupId>
      <artifactId>hipparchus-stat</artifactId>
      <version>${orekit.hipparchus.version}</version>
    </dependency>
    <!-- test dependencies -->
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-core</artifactId>
Luc Maisonobe's avatar
Luc Maisonobe committed
      <version>${orekit.mockito-core.version}</version>
      <scope>test</scope>
    </dependency>
Evan Ward's avatar
Evan Ward committed
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-api</artifactId>
Evan Ward's avatar
Evan Ward committed
      <version>${orekit.junit.version}</version>
      <optional>false</optional>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-engine</artifactId>
      <version>${orekit.junit.version}</version>
      <optional>false</optional>
Evan Ward's avatar
Evan Ward committed
      <scope>test</scope>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-params</artifactId>
      <version>${orekit.junit.version}</version>
    <dependency>
      <groupId>org.hamcrest</groupId>
      <artifactId>hamcrest</artifactId>
      <version>${orekit.hamcrest.version}</version>
Evan Ward's avatar
Evan Ward committed
      <optional>false</optional>
      <scope>test</scope>
  </dependencies>
Luc Maisonobe's avatar
Luc Maisonobe committed
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>${orekit.maven-compiler-plugin.version}</version>
          <source>${orekit.compiler.source}</source>
          <target>${orekit.compiler.target}</target>
          <showWarnings>true</showWarnings>
          <compilerArgs>
            <arg>-Xlint:deprecation</arg>
Luc Maisonobe's avatar
Luc Maisonobe committed
            <arg>-Xlint:unchecked</arg>
            <arg>-Xplugin:dataContextPlugin</arg>
          </compilerArgs>
        <executions>
          <execution>
            <id>default-compile</id>
            <goals>
              <goal>compile</goal>
            </goals>
            <configuration>
              <excludes>
                <!-- don't recompile the compiler plugin. -->
                <exclude>org/orekit/compiler/**</exclude>
              </excludes>
            </configuration>
          </execution>
            <goals>
              <goal>testCompile</goal>
            </goals>
            <configuration>
              <compilerArgs>
                <arg>-Xlint:deprecation</arg>
                <arg>-Xlint:unchecked</arg>
                <!-- don't activate the compiler plugin for Orekit own tests -->
                <!-- thousands of tests use intentionally the default context -->
              </compilerArgs>
            </configuration>
          </execution>
          <execution>
            <!-- need to compile these two packages before the rest so that the compiler
                 plugin will work. -->
            <id>plugin-compile</id>
            <goals>
              <goal>compile</goal>
            </goals>
            <!-- the phase before compile. -->
            <phase>process-resources</phase>
            <configuration>
              <includes>
                <include>org/orekit/annotation/**</include>
                <include>org/orekit/compiler/**</include>
              </includes>
              <compilerArgs>
                <arg>-Xlint:deprecation</arg>
                <!-- Add the Java compiler to the classpath. This avoids creating a system
                     dependency which is inherited by projects using Orekit. -->
                <arg>-classpath</arg>
                <arg>${tools.jar.path}</arg>
              </compilerArgs>
            </configuration>
          </execution>
        </executions>
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <version>${orekit.maven-bundle-plugin.version}</version>
        <extensions>true</extensions>
        <configuration>
          <archive>
            <forced>true</forced>
          </archive>
          <manifestLocation>${project.build.directory}/osgi</manifestLocation>
          <instructions>
            <Export-Package>org.orekit.*;version=${project.version};-noimport:=true</Export-Package>
            <Bundle-DocURL>${project.url}</Bundle-DocURL>
          </instructions>
        </configuration>
        <executions>
          <execution>
            <id>bundle-manifest</id>
            <phase>process-classes</phase>
            <goals>
              <goal>manifest</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <version>${orekit.maven-resources-plugin.version}</version>
        <executions>
          <execution>
            <phase>process-resources</phase>
            <goals>
              <goal>copy-resources</goal>
            </goals>
            <configuration>
              <!-- Ensure LICENSE and NOTICE are shipped with binary jar -->
              <outputDirectory>${project.build.outputDirectory}/META-INF</outputDirectory>
              <resources>
                <resource>
                  <directory>.</directory>
                  <includes>
                    <include>LICENSE.txt</include>
                    <include>NOTICE.txt</include>
                  </includes>
                </resource>
              </resources>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>${orekit.build-helper-maven-plugin.version}</version>
        <executions>
          <execution>
            <id>add-resource</id>
            <phase>process-resources</phase>
            <goals>
              <goal>add-resource</goal>
            </goals>
            <configuration>
              <!-- Ensure LICENSE and NOTICE are shipped with sources jar -->
              <resources>
                <resource>
                  <directory>.</directory>
                  <targetPath>META-INF</targetPath>
                  <includes>
                    <include>LICENSE.txt</include>
                    <include>NOTICE.txt</include>
                  </includes>
                </resource>
              </resources>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-clean-plugin</artifactId>
        <version>${orekit.maven-clean-plugin.version}</version>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-site-plugin</artifactId>
        <version>${orekit.maven-site-plugin.version}</version>
          <dependencies>
            <dependency><!-- add support for ssh/scp -->
              <groupId>org.apache.maven.wagon</groupId>
              <artifactId>wagon-ssh-external</artifactId>
              <version>${orekit.maven-wagon-ssh-external-plugin.version}</version>
            </dependency>
          </dependencies>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>${orekit.maven-surefire-plugin.version}</version>
        <configuration>
          <argLine>@{argLine} -Xmx2048m</argLine>
          <additionalClasspathElements>
            <additionalClasspathElement>${tools.jar.path}</additionalClasspathElement>
          </additionalClasspathElements>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-changes-plugin</artifactId>
        <version>${orekit.maven-changes-plugin.version}</version>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jxr-plugin</artifactId>
        <version>${orekit.maven-jxr-plugin.version}</version>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <version>${orekit.maven-project-info-reports-plugin.version}</version>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>${orekit.maven-javadoc-plugin.version}</version>
Luc Maisonobe's avatar
Luc Maisonobe committed
        <configuration>
          <overview>${basedir}/src/main/java/org/orekit/overview.html</overview>
          <additionalOptions>
            <option>--allow-script-in-comments</option>
            <option>-header</option>
            <option>&apos;${orekit.mathjax.config} ${orekit.mathjax.enable}&apos;</option>
            <option>-extdirs</option>
            <option>${tools.jar.dir}</option>
          </additionalOptions>
          <bottom><![CDATA[Copyright &copy; ${project.inceptionYear}-{currentYear} <a href="https://www.csgroup.eu">CS GROUP</a>. All rights reserved.]]></bottom>
Luc Maisonobe's avatar
Luc Maisonobe committed
          <links>
            <link>https://docs.oracle.com/javase/8/docs/api/</link>
Luc Maisonobe's avatar
Luc Maisonobe committed
            <link>https://www.hipparchus.org/apidocs/</link>
          </links>
          <source>${orekit.compiler.source}</source>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <version>${orekit.jacoco-maven-plugin.version}</version>
        <executions>
          <execution>
            <id>prepare-agent</id>
            <phase>process-test-classes</phase>
            <goals>
              <goal>prepare-agent</goal>
            </goals>
            <configuration>
              <excludes>
               <exclude>fr/cs/examples/**/*.class</exclude>
              </excludes>
            </configuration>
          </execution>
          <execution>
            <id>report</id>
            <phase>site</phase>
            <goals>
              <goal>report</goal>
            </goals>
            <configuration>
              <excludes>
               <exclude>fr/cs/examples/**/*.class</exclude>
              </excludes>
            </configuration>
          </execution>
          <execution>
            <id>check</id>
            <goals>
              <goal>check</goal>
            </goals>
            <configuration>
Evan Ward's avatar
Evan Ward committed
              <rules>
                <rule>
                  <element>BUNDLE</element>
                  <limits>
                    <limit>
                      <counter>CLASS</counter>
                      <value>COVEREDRATIO</value>
                      <minimum>1.00</minimum>
                    </limit>
                    <limit>
                      <counter>INSTRUCTION</counter>
                      <value>COVEREDRATIO</value>
                      <minimum>0.90</minimum>
                    </limit>
                    <limit>
                      <counter>METHOD</counter>
                      <value>COVEREDRATIO</value>
                      <minimum>0.95</minimum>
                    </limit>
                    <limit>
                      <counter>BRANCH</counter>
                      <value>COVEREDRATIO</value>
                      <minimum>0.85</minimum>
                    </limit>
                    <limit>
                      <counter>COMPLEXITY</counter>
                      <value>COVEREDRATIO</value>
                      <minimum>0.85</minimum>
                    </limit>
                    <limit>
                      <counter>LINE</counter>
                      <value>COVEREDRATIO</value>
                      <minimum>0.90</minimum>
                    </limit>
                  </limits>
                </rule>
              </rules>
              <haltOnFailure>false</haltOnFailure>
              <excludes>
               <exclude>fr/cs/examples/**/*.class</exclude>
              </excludes>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>com.github.jeluard</groupId>
Luc Maisonobe's avatar
Luc Maisonobe committed
        <artifactId>plantuml-maven-plugin</artifactId>
        <version>${orekit.plantuml-maven-plugin.version}</version>
        <configuration>
          <sourceFiles>
Luc Maisonobe's avatar
Luc Maisonobe committed
            <directory>${basedir}/src/design</directory>
Luc Maisonobe's avatar
Luc Maisonobe committed
                *.puml
              </include>
            </includes>
          </sourceFiles>
          <outputDirectory>
            ${project.build.directory}/site/images/design
          </outputDirectory>
        </configuration>
Luc Maisonobe's avatar
Luc Maisonobe committed
        <dependencies>
          <dependency>
            <groupId>net.sourceforge.plantuml</groupId>
            <artifactId>plantuml</artifactId>
            <version>${orekit.plantuml.version}</version>
          </dependency>
        </dependencies>
        <executions>
          <execution>
            <phase>pre-site</phase>
            <goals>
              <goal>generate</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
Luc Maisonobe's avatar
Luc Maisonobe committed
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>${orekit.maven-jar-plugin.version}</version>
        <configuration>
          <archive>
            <manifestFile>${project.build.directory}/osgi/MANIFEST.MF</manifestFile>
            <manifestEntries>
              <X-Compile-Source-JDK>${orekit.compiler.source}</X-Compile-Source-JDK>
              <X-Compile-Target-JDK>${orekit.compiler.target}</X-Compile-Target-JDK>
              <Automatic-Module-Name>org.orekit</Automatic-Module-Name>
Luc Maisonobe's avatar
Luc Maisonobe committed
            </manifestEntries>
          </archive>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <version>${orekit.maven-checkstyle-plugin.version}</version>
        <dependencies>
          <dependency>
            <groupId>com.puppycrawl.tools</groupId>
            <artifactId>checkstyle</artifactId>
            <version>${orekit.checkstyle.version}</version>
          </dependency>
        </dependencies>
        <configuration>
          <configLocation>${basedir}/checkstyle.xml</configLocation>
          <enableRulesSummary>false</enableRulesSummary>
          <headerLocation>${basedir}/license-header.txt</headerLocation>
        </configuration>
      </plugin>
Luc Maisonobe's avatar
Luc Maisonobe committed
    </plugins>
Luc Maisonobe's avatar
Luc Maisonobe committed
  <reporting>
    <plugins>
Luc Maisonobe's avatar
Luc Maisonobe committed
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-site-plugin</artifactId>
        <version>${orekit.maven-site-plugin.version}</version>
Luc Maisonobe's avatar
Luc Maisonobe committed
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <version>${orekit.maven-project-info-reports-plugin.version}</version>
Luc Maisonobe's avatar
Luc Maisonobe committed
      </plugin>
      <plugin>
          <groupId>com.github.spotbugs</groupId>
          <artifactId>spotbugs-maven-plugin</artifactId>
        <version>${orekit.spotbugs-maven-plugin.version}</version>
        <configuration>
          <threshold>Normal</threshold>
          <effort>Default</effort>
          <excludeFilterFile>${basedir}/spotbugs-exclude-filter.xml</excludeFilterFile>
       </configuration>
Luc Maisonobe's avatar
Luc Maisonobe committed
      </plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>${orekit.maven-surefire-plugin.version}</version>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-report-plugin</artifactId>
        <version>${orekit.maven-surefire-report-plugin.version}</version>
      </plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <version>${orekit.maven-checkstyle-plugin.version}</version>
        <configuration>
          <configLocation>${basedir}/checkstyle.xml</configLocation>
          <enableRulesSummary>false</enableRulesSummary>
          <headerLocation>${basedir}/license-header.txt</headerLocation>
        </configuration>
        <reportSets>
          <reportSet>
            <reports>
              <report>checkstyle</report>
            </reports>
          </reportSet>
        </reportSets>
Luc Maisonobe's avatar
Luc Maisonobe committed
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-changes-plugin</artifactId>
        <version>${orekit.maven-changes-plugin.version}</version>
        <configuration>
          <teamlist>team.html</teamlist>
        </configuration>
Luc Maisonobe's avatar
Luc Maisonobe committed
        <reportSets>
          <reportSet>
            <reports>
              <report>changes-report</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jxr-plugin</artifactId>
        <version>${orekit.maven-jxr-plugin.version}</version>
        <configuration>
          <linkJavadoc>false</linkJavadoc>
          <bottom><![CDATA[Copyright &copy; ${project.inceptionYear}-{currentYear} <a href="https://www.csgroup.eu">CS GROUP</a>. All rights reserved.]]></bottom>
        </configuration>
Luc Maisonobe's avatar
Luc Maisonobe committed
      </plugin>
Luc Maisonobe's avatar
Luc Maisonobe committed
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>${orekit.maven-javadoc-plugin.version}</version>
Luc Maisonobe's avatar
Luc Maisonobe committed
        <configuration>
          <overview>${basedir}/src/main/java/org/orekit/overview.html</overview>
          <additionalOptions>
            <option>--allow-script-in-comments</option>
            <option>-header</option>
            <option>&apos;${orekit.mathjax.config} ${orekit.mathjax.enable}&apos;</option>
            <option>-extdirs</option>
            <option>${tools.jar.dir}</option>
          </additionalOptions>
          <bottom><![CDATA[Copyright &copy; ${project.inceptionYear}-{currentYear} <a href="https://www.csgroup.eu">CS GROUP</a>. All rights reserved.]]></bottom>
Luc Maisonobe's avatar
Luc Maisonobe committed
          <links>
            <link>https://docs.oracle.com/javase/8/docs/api/</link>
Luc Maisonobe's avatar
Luc Maisonobe committed
            <link>https://www.hipparchus.org/apidocs/</link>
Luc Maisonobe's avatar
Luc Maisonobe committed
          </links>
Luc Maisonobe's avatar
Luc Maisonobe committed
          <source>${orekit.compiler.source}</source>
          <doclint>none</doclint>
Luc Maisonobe's avatar
Luc Maisonobe committed
        </configuration>
        <reportSets>
          <reportSet>
            <reports>
              <report>javadoc</report>
            </reports>
          </reportSet>
        </reportSets>
Luc Maisonobe's avatar
Luc Maisonobe committed
      </plugin>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <version>${orekit.jacoco-maven-plugin.version}</version>
Luc Maisonobe's avatar
Luc Maisonobe committed
    </plugins>
  </reporting>
    <profile>
      <id>git</id>
      <activation>
      <file>
        <exists>.git</exists>
      </file>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.bidib.buildnumber</groupId>
            <artifactId>maven-jgit-buildnumber-plugin</artifactId>
            <version>${orekit.jgit.buildnumber.version}</version>
            <executions>
              <execution>
                <phase>prepare-package</phase>
                <goals>
                  <goal>extract-buildnumber</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>${orekit.maven-jar-plugin.version}</version>
            <configuration>
             <archive>
              <manifestFile>${project.build.directory}/osgi/MANIFEST.MF</manifestFile>