mirror of
https://github.com/octoleo/plantuml-server.git
synced 2024-11-16 17:25:13 +00:00
497 lines
18 KiB
XML
497 lines
18 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<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>
|
|
|
|
<groupId>org.sourceforge.plantuml</groupId>
|
|
<artifactId>plantumlservlet</artifactId>
|
|
<version>1-SNAPSHOT</version>
|
|
<packaging>war</packaging>
|
|
|
|
<name>PlantUML Servlet</name>
|
|
<url>https://plantuml.github.io/plantuml-server/index.html</url>
|
|
|
|
<properties>
|
|
<java.version>8</java.version>
|
|
<maven.compiler.source>${java.version}</maven.compiler.source>
|
|
<maven.compiler.target>${java.version}</maven.compiler.target>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
|
|
<!--
|
|
Skip tests by default.
|
|
Run tests manually:
|
|
- mvn test -DskipTests=false
|
|
- mvn test -DskipTests=false -DargLine="-Dsystem.test.server=http://localhost:8080/plantuml"
|
|
-->
|
|
<skipTests>true</skipTests>
|
|
|
|
<!--
|
|
This artifact is required for:
|
|
1. EmbeddedJettyServer -> scope: test
|
|
2. Tomcat docker image -> scope: compile
|
|
BUT: Jetty docker image as well as jetty-runner will crash on runtime if
|
|
this artifact is included because it's already provided so that the
|
|
artifact would apear multiple times on the classpath.
|
|
You can test it via: `mvn jetty:run [-Dapache-jsp.scope=compile]`
|
|
Error: java.util.ServiceConfigurationError: org.apache.juli.logging.Log: org.eclipse.jetty.apache.jsp.JuliLog not a subtype
|
|
HENCE: Default is the "test" scope and for Tomcat docker image building add:
|
|
-Dapache-jsp.scope=compile
|
|
-->
|
|
<apache-jsp.scope>test</apache-jsp.scope>
|
|
|
|
<maven.build.timestamp.format>yyyyMMdd-HHmm</maven.build.timestamp.format>
|
|
<timestamp>${maven.build.timestamp}</timestamp>
|
|
|
|
<wtp.version>1.5</wtp.version>
|
|
<wtp.contextName>plantuml</wtp.contextName>
|
|
|
|
<jetty.http.port>8080</jetty.http.port>
|
|
<jetty.contextpath>/${wtp.contextName}</jetty.contextpath>
|
|
|
|
<!-- main versions -->
|
|
<plantuml.version>1.2023.1</plantuml.version>
|
|
<!-- Please keep the jetty version identical with the docker image -->
|
|
<jetty.version>11.0.7</jetty.version>
|
|
<codemirror.version>5.63.0</codemirror.version>
|
|
|
|
<!-- dependencies -->
|
|
<jstl.version>1.2</jstl.version>
|
|
<apache-jsp.version>${jetty.version}</apache-jsp.version>
|
|
<jetty-annotations.version>${jetty.version}</jetty-annotations.version>
|
|
<glassfish-jstl.version>${jetty.version}</glassfish-jstl.version>
|
|
<batik-all.version>1.14</batik-all.version>
|
|
<!-- jlatexmath -->
|
|
<jlatexmath.version>1.0.7</jlatexmath.version>
|
|
<jlatexmath-font-greek.version>${jlatexmath.version}</jlatexmath-font-greek.version>
|
|
<jlatexmath-font-cyrillic.version>${jlatexmath.version}</jlatexmath-font-cyrillic.version>
|
|
|
|
<!-- Testing -->
|
|
<junit.version>4.13.2</junit.version>
|
|
<htmlunit.version>2.53.0</htmlunit.version>
|
|
<jetty-server.version>${jetty.version}</jetty-server.version>
|
|
|
|
<!-- build plugin management -->
|
|
<!-- lock down plugins versions to avoid using Maven defaults -->
|
|
<maven-clean-plugin.version>3.1.0</maven-clean-plugin.version>
|
|
<maven-dependency-plugin.version>3.2.0</maven-dependency-plugin.version>
|
|
<maven-resources-plugin.version>3.2.0</maven-resources-plugin.version>
|
|
<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
|
|
<versions-maven-plugin.version>2.8.1</versions-maven-plugin.version>
|
|
<maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
|
|
<maven-war-plugin.version>3.3.2</maven-war-plugin.version>
|
|
<maven-install-plugin.version>2.5.2</maven-install-plugin.version>
|
|
<maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version>
|
|
<maven-site-plugin.version>3.9.1</maven-site-plugin.version>
|
|
<maven-project-info-reports-plugin.version>3.1.2</maven-project-info-reports-plugin.version>
|
|
<maven-checkstyle-plugin.version>3.1.2</maven-checkstyle-plugin.version>
|
|
<checkstyle.version>9.0.1</checkstyle.version>
|
|
|
|
<!-- plugins -->
|
|
<maven-eclipse-plugin.version>2.10</maven-eclipse-plugin.version>
|
|
<jetty-runner.version>${jetty.version}</jetty-runner.version>
|
|
<jetty-maven-plugin.version>${jetty.version}</jetty-maven-plugin.version>
|
|
<duplicate-finder-maven-plugin.version>1.5.0</duplicate-finder-maven-plugin.version>
|
|
<maven-javadoc-plugin.version>3.3.1</maven-javadoc-plugin.version>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>net.sourceforge.plantuml</groupId>
|
|
<artifactId>plantuml</artifactId>
|
|
<version>${plantuml.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.webjars.npm</groupId>
|
|
<artifactId>codemirror</artifactId>
|
|
<version>${codemirror.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>jakarta.servlet</groupId>
|
|
<artifactId>jakarta.servlet-api</artifactId>
|
|
<version>5.0.0</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>apache-jsp</artifactId>
|
|
<version>${apache-jsp.version}</version>
|
|
<scope>${apache-jsp.scope}</scope>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.eclipse.jetty.toolchain</groupId>
|
|
<artifactId>jetty-jakarta-servlet-api</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>org.eclipse.jetty.toolchain</groupId>
|
|
<artifactId>jetty-schemas</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-annotations</artifactId>
|
|
<version>${jetty-annotations.version}</version>
|
|
<scope>provided</scope>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.eclipse.jetty.toolchain</groupId>
|
|
<artifactId>jetty-jakarta-servlet-api</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<!-- batik-all generally tends to provide duplicate resources on the classpath -->
|
|
<groupId>org.apache.xmlgraphics</groupId>
|
|
<artifactId>batik-all</artifactId>
|
|
<version>${batik-all.version}</version>
|
|
<type>pom</type>
|
|
</dependency>
|
|
<!-- jlatexmath -->
|
|
<dependency>
|
|
<groupId>org.scilab.forge</groupId>
|
|
<artifactId>jlatexmath</artifactId>
|
|
<version>${jlatexmath.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.scilab.forge</groupId>
|
|
<artifactId>jlatexmath-font-greek</artifactId>
|
|
<version>${jlatexmath-font-greek.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.scilab.forge</groupId>
|
|
<artifactId>jlatexmath-font-cyrillic</artifactId>
|
|
<version>${jlatexmath-font-cyrillic.version}</version>
|
|
</dependency>
|
|
|
|
<!-- Testing -->
|
|
<dependency>
|
|
<groupId>junit</groupId>
|
|
<artifactId>junit</artifactId>
|
|
<version>${junit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>net.sourceforge.htmlunit</groupId>
|
|
<artifactId>htmlunit</artifactId>
|
|
<version>${htmlunit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-server</artifactId>
|
|
<version>${jetty-server.version}</version>
|
|
<scope>test</scope>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.eclipse.jetty.toolchain</groupId>
|
|
<artifactId>jetty-jakarta-servlet-api</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<finalName>plantuml</finalName>
|
|
|
|
<pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<artifactId>maven-clean-plugin</artifactId>
|
|
<version>${maven-clean-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>${maven-dependency-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<version>${maven-resources-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>${maven-compiler-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>${maven-surefire-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-war-plugin</artifactId>
|
|
<version>${maven-war-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-install-plugin</artifactId>
|
|
<version>${maven-install-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-deploy-plugin</artifactId>
|
|
<version>${maven-deploy-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-site-plugin</artifactId>
|
|
<version>${maven-site-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-project-info-reports-plugin</artifactId>
|
|
<version>${maven-project-info-reports-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>${maven-checkstyle-plugin.version}</version>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.puppycrawl.tools</groupId>
|
|
<artifactId>checkstyle</artifactId>
|
|
<version>${checkstyle.version}</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<configuration>
|
|
<configLocation>${basedir}/src/main/config/checkstyle.xml</configLocation>
|
|
<linkXRef>false</linkXRef>
|
|
<consoleOutput>true</consoleOutput>
|
|
<failsOnError>true</failsOnError>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>versions-maven-plugin</artifactId>
|
|
<version>${versions-maven-plugin.version}</version>
|
|
<configuration>
|
|
<outputFile>${project.build.directory}/outdated-dependencies.txt</outputFile>
|
|
<rulesUri>file:///${basedir}/src/main/config/rules.xml</rulesUri>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
|
|
<plugins>
|
|
<plugin>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>${maven-compiler-plugin.version}</version>
|
|
<configuration>
|
|
<source>${maven.compiler.source}</source>
|
|
<target>${maven.compiler.target}</target>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>${maven-surefire-plugin.version}</version>
|
|
<configuration>
|
|
<skipTests>${skipTests}</skipTests>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-site-plugin</artifactId>
|
|
<version>${maven-site-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>${maven-checkstyle-plugin.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<?m2e execute onConfiguration,onIncremental?>
|
|
<phase>validate</phase>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>versions-maven-plugin</artifactId>
|
|
<version>${versions-maven-plugin.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<phase>validate</phase>
|
|
<goals>
|
|
<goal>display-property-updates</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.basepom.maven</groupId>
|
|
<artifactId>duplicate-finder-maven-plugin</artifactId>
|
|
<version>${duplicate-finder-maven-plugin.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<ignoredResourcePatterns>
|
|
<ignoredResourcePattern>^about\.html$</ignoredResourcePattern>
|
|
<ignoredResourcePattern>^license/LICENSE\.dom-software\.txt$</ignoredResourcePattern>
|
|
<ignoredResourcePattern>^org/apache/batik/apps/rasterizer/resources/rasterizer\.policy$</ignoredResourcePattern>
|
|
</ignoredResourcePatterns>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-javadoc-plugin</artifactId>
|
|
<version>${maven-javadoc-plugin.version}</version>
|
|
<configuration>
|
|
<show>private</show>
|
|
<nohelp>true</nohelp>
|
|
<source>${java.version}</source>
|
|
<failOnWarnings>true</failOnWarnings>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>${maven-dependency-plugin.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<?m2e execute onConfiguration,onIncremental?>
|
|
<!-- To provide webjars for the embedded jetty server for junit tests -->
|
|
<id>unpack-resources</id>
|
|
<phase>generate-test-sources</phase>
|
|
<goals>
|
|
<goal>unpack</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.webjars.npm</groupId>
|
|
<artifactId>codemirror</artifactId>
|
|
<version>${codemirror.version}</version>
|
|
<includes>**/lib/*.js,**/lib/*.css</includes>
|
|
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>copy</goal>
|
|
</goals>
|
|
<configuration>
|
|
<artifactItems>
|
|
<artifactItem>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-runner</artifactId>
|
|
<version>${jetty-runner.version}</version>
|
|
<destFileName>jetty-runner.jar</destFileName>
|
|
</artifactItem>
|
|
</artifactItems>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-eclipse-plugin</artifactId>
|
|
<version>${maven-eclipse-plugin.version}</version>
|
|
<configuration>
|
|
<wtpversion>${wtp.version}</wtpversion>
|
|
<wtpContextName>${wtp.contextName}</wtpContextName>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.eclipse.jetty</groupId>
|
|
<artifactId>jetty-maven-plugin</artifactId>
|
|
<version>${jetty-maven-plugin.version}</version>
|
|
<configuration>
|
|
<!-- jetty.xml
|
|
Only necessary to support old proxy.
|
|
The old proxy needs empty path segments support in URIs.
|
|
Hence: allow AMBIGUOUS_EMPTY_SEGMENT
|
|
-->
|
|
<jettyXmls>${basedir}/src/main/config/jetty.xml</jettyXmls>
|
|
<scanIntervalSeconds>5</scanIntervalSeconds>
|
|
<webApp>
|
|
<contextPath>${jetty.contextpath}</contextPath>
|
|
</webApp>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-war-plugin</artifactId>
|
|
<version>${maven-war-plugin.version}</version>
|
|
<configuration>
|
|
<webResources>
|
|
<resource>
|
|
<directory>${basedir}/src/main/webapp</directory>
|
|
<includes>
|
|
<include>*.jspf</include>
|
|
</includes>
|
|
<filtering>true</filtering>
|
|
</resource>
|
|
</webResources>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<reporting>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-project-info-reports-plugin</artifactId>
|
|
<version>${maven-project-info-reports-plugin.version}</version>
|
|
<reportSets>
|
|
<reportSet>
|
|
<reports>
|
|
<report>index</report>
|
|
<report>dependencies</report>
|
|
</reports>
|
|
</reportSet>
|
|
</reportSets>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>versions-maven-plugin</artifactId>
|
|
<version>${versions-maven-plugin.version}</version>
|
|
<reportSets>
|
|
<reportSet>
|
|
<reports>
|
|
<!-- <report>dependency-updates-report</report> -->
|
|
<!-- <report>plugin-updates-report</report> -->
|
|
<report>property-updates-report</report>
|
|
</reports>
|
|
</reportSet>
|
|
</reportSets>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-javadoc-plugin</artifactId>
|
|
<version>${maven-javadoc-plugin.version}</version>
|
|
<reportSets>
|
|
<reportSet>
|
|
<id>html</id>
|
|
<reports>
|
|
<report>javadoc</report>
|
|
</reports>
|
|
</reportSet>
|
|
</reportSets>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>${maven-checkstyle-plugin.version}</version>
|
|
<reportSets>
|
|
<reportSet>
|
|
<reports>
|
|
<report>checkstyle</report>
|
|
<report>checkstyle-aggregate</report>
|
|
</reports>
|
|
</reportSet>
|
|
</reportSets>
|
|
</plugin>
|
|
</plugins>
|
|
</reporting>
|
|
</project>
|