multex
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>io.github.christophknabe</groupId>
<artifactId>multex</artifactId>
<version>8.5.1</version>
</dependency><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>
<!-- The Basics -->
<groupId>io.github.christophknabe</groupId>
<artifactId>multex</artifactId>
<!-- Indicate version as m.n-SNAPSHOT during development, and finally before release as m.n ! -->
<version>8.5.1</version>
<!-- 8.5.1 Minor rework: static variables, maxRecursionDepth, DottedVersion.compareTo -->
<!-- 8.5 disables creation of inner non-static MulTEx exception classes. -->
<!-- 8.4.1 has the documentation migrated from Maven Site to GitHub Markdown. -->
<!-- 8.4 is the identical port of 8.3 to the github/Sonatype infrastructure for publishing it.
Now with groupId io.github.christophknabe instead of former de.tfh-berlin.knabe
and developed on Java 8 instead of Java 6.
-->
<!-- 8.3 was the last released version on 2011-11-08: Removes StackOverflowError when following Util.getCause. Produced on and for Java 1.6 -->
<!-- 8.2 was released on 2009-10-22 -->
<!-- 8.1 was released on 2008-12-08 -->
<!-- 8.0 was released on 2008-01-11 -->
<!-- 7.3 was released on 2007-09-20, is upwards compatible with 7.2, but requires the Java 5 platform. -->
<packaging>jar</packaging>
<properties>
<!-- Source and .properties file encoding: -->
<project.build.sourceEncoding>ISO-8859-1</project.build.sourceEncoding>
<project.reporting.outputEncoding>ISO-8859-1</project.reporting.outputEncoding>
<tools.jar.path>${env.JAVA_HOME}/lib/tools.jar</tools.jar.path>
<surefire.version>3.0.0-M5</surefire.version>
<site.version>3.10.0</site.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<!-- Version should not have conflicts with the version used in the IDE! -->
<version>4.5</version>
<scope>test</scope>
</dependency>
<dependency>
<!-- From local repo, previously installed by maven-install-plugin -->
<groupId>com.sun.jdk</groupId>
<artifactId>tools</artifactId>
<version>1.8</version>
</dependency>
</dependencies>
<!-- Build Settings -->
<build>
<plugins>
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>enforce-license</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireFilesExist>
<files>
<file>${tools.jar.path}</file>
</files>
<message>Without ${tools.jar.path} the extraction of the exception message texts by JavaDoc cannot work.</message>
</requireFilesExist>
<requireMavenVersion>
<version>[3.0.0,)</version>
</requireMavenVersion>
<requireJavaVersion>
<version>[1.8.0,)</version>
</requireJavaVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<!-- For installing tools.jar from JDK locally. Follows https://www.baeldung.com/install-local-jar-with-maven/ -->
<!-- Needed for the ExceptionMessagesDoclet, which collects the Javadoc texts of all exceptions to a .properties file. -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<groupId>com.sun.jdk</groupId>
<artifactId>tools</artifactId>
<version>1.8</version>
<packaging>jar</packaging>
<file>${tools.jar.path}</file>
<generatePom>true</generatePom>
</configuration>
<executions>
<execution>
<id>install-tools.jar</id>
<goals>
<goal>install-file</goal>
</goals>
<phase>validate</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<!-- Java Code Coverage analyzer. See https://www.petrikainulainen.net/programming/maven/creating-code-coverage-reports-for-unit-and-integration-tests-with-the-jacoco-maven-plugin/ -->
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<executions>
<!-- Prepares the property pointing to the JaCoCo runtime agent, which
is passed as VM argument, when the Maven Surefire plugin is executed. -->
<execution>
<id>pre-unit-test</id>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<!-- Sets the path to the file which contains the execution data. -->
<destFile>${project.build.directory}/coverage-reports/jacoco-ut.exec</destFile>
<!-- Sets the name of the property containing the settings for the JaCoCo runtime agent. -->
<propertyName>surefireArgLine</propertyName>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.version}</version>
<configuration>
<!-- Sets the VM argument line for test runs in Surefire, created by
the upper prepare-agent goal of the jacoco-maven-plugin. -->
<argLine>${surefireArgLine}</argLine>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.2.1</version>
<configuration>
<attach>true</attach>
</configuration>
<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>3.3.1</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<!-- See https://www.torsten-horn.de/techdocs/maven.htm#DocBook-Docbkx -->
<groupId>com.agilejava.docbkx</groupId>
<artifactId>docbkx-maven-plugin</artifactId>
<version>2.0.17</version>
<executions>
<execution>
<goals>
<goal>generate-webhelp</goal>
<goal>generate-pdf</goal>
</goals>
<phase>pre-site</phase>
</execution>
</executions>
<configuration>
<!-- shared configuration -->
<sourceDirectory>${project.basedir}/src/site/docbook</sourceDirectory>
<targetDirectory>${project.build.directory}/site/docbook</targetDirectory>
<entities>
<entity>
<name>softwareVersion</name>
<value>${project.version}</value>
</entity>
</entities>
<showXslMessages>true</showXslMessages>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<!-- configuration with passphrase necessary? -->
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>${site.version}</version>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.8</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>
</plugins>
<extensions>
<extension> <!-- In the Apache repository -->
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh-external</artifactId>
<version>1.0-beta-7</version>
</extension>
</extensions>
<pluginManagement>
<plugins>
<plugin>
<!-- Java Code Coverage analyzer. See https://www.petrikainulainen.net/programming/maven/creating-code-coverage-reports-for-unit-and-integration-tests-with-the-jacoco-maven-plugin/ -->
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.7</version>
</plugin>
</plugins>
</pluginManagement>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jdepend-maven-plugin</artifactId>
<version>2.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>${site.version}</version>
</plugin>
<plugin>
<artifactId>maven-surefire-report-plugin</artifactId>
<version>${surefire.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>3.1.2</version>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<reportSets>
<!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. -->
<reportSet>
<id>post-unit-test</id>
<reports>
<report>report</report>
</reports>
<configuration>
<!-- Sets the path to the file which contains the collected execution data. -->
<dataFile>${project.build.directory}/coverage-reports/jacoco-ut.exec</dataFile>
<!-- Sets the output directory for the code coverage report. -->
<outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
</configuration>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
<!-- More Project Information -->
<name>The Multi-Tier Exception Handling Framework (MulTEx ${project.version})</name>
<description>MulTEx is a simple, but powerful framework for organizing exceptions
and messages in a multi-tier Java software system.
It offers the key features:
Causal chains/trees as a means to capture low-level error information.
Redundancy-free stack traces and message chains in the case of indirectly caused exceptions.
Internationalized message texts and parameters for exceptions.
Services for reporting an exception chain/tree onto streams and dialogs.
A standard way for writing method bodies with regard to exceptions.
A collection of utilities for centralized exception reporting.
</description>
<url>http://public.bht-berlin.de/~knabe/java/multex/</url>
<inceptionYear>1998</inceptionYear>
<licenses>
<license>
<name>GNU Lesser General Public License, Version 3</name>
<url>https://www.gnu.org/licenses/lgpl-3.0.html</url>
<distribution>repo</distribution>
</license>
</licenses>
<organization>
<name>Berliner Hochschule für Technik - Berlin University of Applied Sciences and Technology</name>
<url>https://www.bht-berlin.de/</url>
</organization>
<developers>
<developer>
<name>Christoph Knabe</name>
<url>http://public.bht-berlin.de/~knabe/</url>
<roles>
<role>architect</role>
<role>developer</role>
</roles>
<timezone>+1</timezone>
</developer>
</developers>
<scm>
<connection>scm:git:https://github.com/christophknabe/multex.git</connection>
<developerConnection>scm:git:git@github.com:christophknabe/multex.git</developerConnection>
<tag>HEAD</tag>
<url>https://github.com/christophknabe/multex</url>
</scm>
<!-- Environment Settings -->
<repositories>
<!-- Besides Maven Central the following repositories are needed: -->
<repository>
<!-- For the dummy artifact org.eclipse.m2e:lifecycle-mapping -->
<id>tu-delft-repository</id>
<name>Technical University Delft Maven repository</name>
<url>https://simulation.tudelft.nl/maven/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
</pluginRepositories>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<site>
<id>bht-hrz-knabe</id>
<!--
<url>scp://hrz.tfh-berlin.de/usr1/doz/knabe/homepage/public_html/java/multex/snapshot/</url>
<url>scp://compute.tfh-berlin.de/usr1/doz/knabe/homepage/public_html/java/multex/snapshot/</url>
<url>scpexe://compute.bht-berlin.de.de/usr1/doz/knabe/homepage/public_html/java/multex/snapshot/</url>
-->
<url>scpexe://compute.bht-berlin.de/srv/homepage/knabe/public_html/java/multex/snapshot/</url>
</site>
<!-- Hier stellt sich die Frage, ob diese URL korrekt zeigt, oder ob sie eine Ebene tiefer
auf eine konkrete Versionsnummer zeigen muss. 11-03-31 Knabe
-->
<!--
<downloadUrl>http://public.beuth-hochschule.de/~knabe/mvn-repo/de/tfh-berlin/knabe/multex/</downloadUrl>
-->
</distributionManagement>
<profiles>
<profile>
<!-- Avoid build error "Could not find artifact org.eclipse.m2e:lifecycle-mapping:pom:1.0.0"
by using an Eclipse-specific profile as described in https://stackoverflow.com/a/23707050
-->
<id>only-eclipse</id>
<activation>
<property>
<name>m2e.version</name>
</property>
</activation>
<build>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-install-plugin
</artifactId>
<versionRange>
[2.5.1,)
</versionRange>
<goals>
<goal>install-file</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</profile>
</profiles>
</project>