blob: 6db283a9c89d810fd9eb8c435270676870ef16a4 [file]
<?xml version="1.0" encoding="UTF-8"?>
<!--
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You 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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.myfaces</groupId>
<artifactId>myfaces</artifactId>
<version>19</version>
</parent>
<groupId>org.apache.myfaces.tobago</groupId>
<artifactId>tobago</artifactId>
<packaging>pom</packaging>
<name>Apache Tobago</name>
<version>6.12.0-SNAPSHOT</version>
<description>
The goal of Tobago is to provide the community with a well-designed set of user interface components
based on JSF and run on MyFaces.
</description>
<url>https://myfaces.apache.org/#/tobago</url>
<inceptionYear>2002</inceptionYear>
<properties>
<frontend.skip>true</frontend.skip>
<myfaces40.version>4.0.3</myfaces40.version>
<myfaces41.version>4.1.2</myfaces41.version>
<mojarra40.version>4.0.20</mojarra40.version>
<slf4j.version>2.0.18</slf4j.version>
<logback.version>1.6.0</logback.version>
<maven.compiler.release>17</maven.compiler.release>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<required.maven.version>3.8.1</required.maven.version>
<maven-pmd-plugin.version>3.28.0</maven-pmd-plugin.version>
<maven-checkstyle-plugin.version>3.6.0</maven-checkstyle-plugin.version>
<junit-jupiter.version>6.1.2</junit-jupiter.version>
<testcontainers.version>2.0.5</testcontainers.version>
<checkstyle-rules.version>25</checkstyle-rules.version>
<!-- Note: defined here in master pom, because of problems with enforcer plugin -->
<jetty.version>12.1.11</jetty.version>
<tomcat.version>11.0.18</tomcat.version>
<jackson.version>2.21.0</jackson.version>
</properties>
<issueManagement>
<system>jira</system>
<url>https://issues.apache.org/jira/browse/TOBAGO</url>
</issueManagement>
<ciManagement>
<system>jenkins</system>
<url>https://builds.apache.org/</url>
<notifiers>
<notifier>
<type>mail</type>
<configuration>
<address>commits@myfaces.apache.org</address>
</configuration>
</notifier>
</notifiers>
</ciManagement>
<mailingLists>
<mailingList>
<name>Myfaces User List (use [Tobago] prefix)</name>
<subscribe>users-subscribe@myfaces.apache.org</subscribe>
<unsubscribe>users-unsubscribe@myfaces.apache.org</unsubscribe>
<post>List for posting questions about how to use myfaces projects. Subscribe to this list before posting</post>
<archive>https://lists.apache.org/list.html?user@myfaces.apache.org</archive>
<otherArchives>
<otherArchive>http://mail-archives.apache.org/mod_mbox/myfaces-users</otherArchive>
<otherArchive>http://www.mail-archive.com/users@myfaces.apache.org/</otherArchive>
<otherArchive>http://myfaces.10567.n7.nabble.com/MyFaces-Users-f57691.html</otherArchive>
<otherArchive>http://myfaces.markmail.org/search/?q=#query:list%3Aorg.apache.myfaces.users</otherArchive>
</otherArchives>
</mailingList>
<mailingList>
<name>Myfaces Developer List (use [Tobago] prefix)</name>
<subscribe>dev-subscribe@myfaces.apache.org</subscribe>
<unsubscribe>dev-unsubscribe@myfaces.apache.org</unsubscribe>
<post>List for posting patches and discussing internal code implementation issues. Subscribe to this list before
posting
</post>
<archive>https://lists.apache.org/list.html?dev@myfaces.apache.org</archive>
<otherArchives>
<otherArchive>http://mail-archives.apache.org/mod_mbox/myfaces-dev</otherArchive>
<otherArchive>http://www.mail-archive.com/dev@myfaces.apache.org/</otherArchive>
<otherArchive>http://myfaces.10567.n7.nabble.com/My-Faces-Dev-f3.html</otherArchive>
<otherArchive>http://myfaces.markmail.org/search/?q=#query:list%3Aorg.apache.myfaces.dev</otherArchive>
</otherArchives>
</mailingList>
<mailingList>
<name>Myfaces Commits List</name>
<subscribe>commits-subscribe@myfaces.apache.org</subscribe>
<unsubscribe>commits-unsubscribe@myfaces.apache.org</unsubscribe>
<post>do not post</post>
<archive>https://lists.apache.org/list.html?commits@myfaces.apache.org</archive>
<otherArchives>
<otherArchive>http://mail-archives.apache.org/mod_mbox/myfaces-commits</otherArchive>
<otherArchive>http://myfaces.markmail.org/search/?q=#query:list%3Aorg.apache.myfaces.commits</otherArchive>
</otherArchives>
</mailingList>
<mailingList>
<name>Myfaces Notifications List</name>
<subscribe>notifications-subscribe@myfaces.apache.org</subscribe>
<unsubscribe>notifications-unsubscribe@myfaces.apache.org</unsubscribe>
<post>do not post</post>
<archive>https://lists.apache.org/list.html?notifications@myfaces.apache.org</archive>
<otherArchives>
<otherArchive>http://mail-archives.apache.org/mod_mbox/myfaces-notifications</otherArchive>
<otherArchive>http://myfaces.markmail.org/search/?q=#query:list%3Aorg.apache.myfaces.notifications
</otherArchive>
</otherArchives>
</mailingList>
<mailingList>
<name>Myfaces Announcements List</name>
<subscribe>announce-subscribe@myfaces.apache.org</subscribe>
<unsubscribe>announce-unsubscribe@myfaces.apache.org</unsubscribe>
<post>do not post</post>
<archive>https://lists.apache.org/list.html?announce@myfaces.apache.org</archive>
<otherArchives>
<otherArchive>http://mail-archives.apache.org/mod_mbox/myfaces-announce</otherArchive>
<otherArchive>http://myfaces.markmail.org/search/?q=#query:list%3Aorg.apache.myfaces.announce</otherArchive>
</otherArchives>
</mailingList>
<mailingList>
<name>Myfaces Private (PMC) List</name>
<subscribe>only for MyFaces PMC members</subscribe>
<unsubscribe>private-unsubscribe@myfaces.apache.org</unsubscribe>
<post>do not post unless you need to contact PMC on issues not meant for public</post>
</mailingList>
</mailingLists>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
<version>${myfaces40.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-impl</artifactId>
<version>${myfaces40.version}</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>jakarta.faces</artifactId>
<version>${mojarra40.version}</version>
<optional>true</optional>
</dependency>
<!-- jcl-over-slf4j for myfaces -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${slf4j.version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
<version>6.0.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>jakarta.el</groupId>
<artifactId>jakarta.el-api</artifactId>
<version>5.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>${logback.version}</version>
</dependency>
<!-- only needed to build Tobago and for some examples, but not for runtime -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.22.0</version>
</dependency>
<!-- only needed to build Tobago and for some examples, but not for runtime -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.20.0</version>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.11.0</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junit-jupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-params</artifactId>
<version>${junit-jupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers</artifactId>
<version>${testcontainers.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers-junit-jupiter</artifactId>
<version>${testcontainers.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>jakarta.annotation</groupId>
<artifactId>jakarta.annotation-api</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>jakarta.validation</groupId>
<artifactId>jakarta.validation-api</artifactId>
<version>3.0.2</version>
</dependency>
<dependency>
<groupId>jakarta.servlet.jsp.jstl</groupId>
<artifactId>jakarta.servlet.jsp.jstl-api</artifactId>
<version>3.0.2</version>
</dependency>
<dependency>
<groupId>jakarta.inject</groupId>
<artifactId>jakarta.inject-api</artifactId>
<version>2.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>jakarta.enterprise</groupId>
<artifactId>jakarta.enterprise.cdi-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<!-- jsoup HTML parser library -->
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.22.2</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-test</artifactId>
<version>${myfaces40.version}</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.4.0</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-params</artifactId>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers</artifactId>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>testcontainers-junit-jupiter</artifactId>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
</dependency>
<dependency>
<groupId>jakarta.el</groupId>
<artifactId>jakarta.el-api</artifactId>
</dependency>
</dependencies>
<scm>
<connection>scm:git:https://gitbox.apache.org/repos/asf/myfaces-tobago.git</connection>
<developerConnection>scm:git:https://gitbox.apache.org/repos/asf/myfaces-tobago.git</developerConnection>
<url>https://gitbox.apache.org/repos/asf?p=myfaces-tobago.git</url>
<tag>tobago-6.9.0</tag>
</scm>
<build>
<defaultGoal>install</defaultGoal>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>${maven-pmd-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${maven-checkstyle-plugin.version}</version>
<executions>
<execution>
<id>verify-style</id>
<phase>none</phase>
</execution>
</executions>
<configuration>
<configLocation>tobago/checkstyle.xml</configLocation>
<headerLocation>default/myfaces-header.txt</headerLocation>
<xrefLocation>xref</xrefLocation>
<indentSize>2</indentSize>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
<sourceDirectories>
<sourceDirectory>src/main/java</sourceDirectory>
</sourceDirectories>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.myfaces.buildtools</groupId>
<artifactId>checkstyle-rules</artifactId>
<version>${checkstyle-rules.version}</version>
<!--
Attention: If here is a SNAPSHOT version, the maven-release-plugin will not find and forbid the release.
See: https://issues.apache.org/jira/browse/MRELEASE-378
-->
</dependency>
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
<version>13.8.0</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>3.6.3</version>
<executions>
<execution>
<id>enforce</id>
<phase>validate</phase>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireMavenVersion>
<version>${required.maven.version}</version>
</requireMavenVersion>
<requirePluginVersions>
<message>Best Practice is to always define plugin versions!</message>
<banLatest>true</banLatest>
<banRelease>true</banRelease>
<unCheckedPlugins>
<unCheckedPlugin>org.apache.maven.plugins:maven-eclipse-plugin</unCheckedPlugin>
</unCheckedPlugins>
</requirePluginVersions>
<requireJavaVersion>
<message>Tobago must be built with Java 21 or higher!</message>
<version>[21,)</version>
</requireJavaVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<!--<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<executions>
<execution>
<id>clean</id>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>-->
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-remote-resources-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>process</goal>
</goals>
<configuration>
<resourceBundles>
<resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle>
</resourceBundles>
<properties>
<addLicense>true</addLicense>
</properties>
<excludeScope>provided</excludeScope>
<excludeArtifactIds>servlet-api,jstl</excludeArtifactIds>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>de.thetaphi</groupId>
<artifactId>forbiddenapis</artifactId>
<version>3.10</version>
<configuration>
<!--
if the used Java version is too new,
don't fail, just do nothing:
-->
<failOnUnsupportedJava>false</failOnUnsupportedJava>
<!--
If a class is missing while parsing signatures files, all methods
and fields from this class are silently ignored. This is useful
in multi-module Maven projects where only some modules have the
dependency to which the signature file(s) apply.
This settings prints no warning at all, so verify the signatures
at least once with full dependencies.
-->
<!-- <ignoreSignaturesOfMissingClasses>true</ignoreSignaturesOfMissingClasses>-->
<bundledSignatures>
<!--
This will automatically choose the right
signatures based on 'maven.compiler.target':
-->
<!-- <bundledSignature>jdk-unsafe</bundledSignature>-->
<!-- <bundledSignature>jdk-deprecated</bundledSignature>-->
<!-- disallow undocumented classes like sun.misc.Unsafe: -->
<bundledSignature>jdk-non-portable</bundledSignature>
<!-- don't allow unsafe reflective access: -->
<bundledSignature>jdk-reflection</bundledSignature>
</bundledSignatures>
<!-- <signaturesFiles>-->
<!-- <signaturesFile>./rel/path/to/signatures.txt</signaturesFile>-->
<!-- </signaturesFiles>-->
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
<goal>testCheck</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>${maven-pmd-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-wrapper-plugin</artifactId>
<version>3.3.4</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.6.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${maven-checkstyle-plugin.version}</version>
<configuration>
<configLocation>tobago/checkstyle.xml</configLocation>
<headerLocation>default/myfaces-header.txt</headerLocation>
<xrefLocation>xref</xrefLocation>
<indentSize>2</indentSize>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.myfaces.buildtools</groupId>
<artifactId>checkstyle-rules</artifactId>
<version>${checkstyle-rules.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<artifactId>maven-remote-resources-plugin</artifactId>
<version>3.3.0</version>
<executions>
<execution>
<goals>
<goal>process</goal>
</goals>
<configuration>
<resourceBundles>
<resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle>
</resourceBundles>
<properties>
<addLicense>true</addLicense>
</properties>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<manifestEntries>
<Revision>${scm.revision}</Revision>
<Build-Time>${maven.build.timestamp}</Build-Time>
</manifestEntries>
<manifestSections>
<manifestSection>
<name>${project.artifactId}</name>
<manifestEntries>
<Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
<Implementation-Version>${project.version}</Implementation-Version>
</manifestEntries>
</manifestSection>
</manifestSections>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.15.0</version>
<configuration>
<showWarnings>true</showWarnings>
<useIncrementalCompilation>false</useIncrementalCompilation><!-- see MCOMPILER-209 -->
<!--fork>true</fork-->
<!-- <compilerArgument>-Xlint:all,-serial,-fallthrough</ Argument>-->
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.11.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.5.6</version>
<configuration>
<argLine>-Duser.language=en -Duser.region=US</argLine>
<!--
<childDelegation>false</childDelegation>
<forkMode>perTest</forkMode>
-->
<!--
<argLine>-Xdebug -Xnoagent -Djava.compiler=NONE
-Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=y</argLine>
-->
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>3.5.6</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.12.0</version>
<configuration>
<!-- switched off check in Java 8 -->
<additionalparam>
-Xdoclint:accessibility
-Xdoclint:html
-Xdoclint:reference
-Xdoclint:syntax
</additionalparam>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>3.1.4</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.5.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.5.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.2.1</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-scm-plugin</artifactId>
<version>2.2.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<groupId>com.github.matinh.vdldoc</groupId>
<artifactId>vdldoc-maven-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<version>0.18</version>
<configuration>
<inputExcludes>
<!-- This file is created during a release and needs no licensing text -->
<inputExclude>DEPENDENCIES</inputExclude>
<!-- js-min-map / min-css -->
<inputExclude>**/*.map</inputExclude>
<inputExclude>**/*.min.css</inputExclude>
<!-- faces.js XXX check for official release -->
<inputExclude>**/faces.js</inputExclude>
<inputExclude>**/tobago.js</inputExclude>
<!-- jettykeystore -->
<inputExclude>**/jettykeystore</inputExclude>
<!-- prism (tobago-example-demo) -->
<inputExclude>**/src/main/webapp/*/prism*.*</inputExclude>
<!-- jasmine (tobago-example-demo) -->
<inputExclude>**/src/main/webapp/js/boot*.js</inputExclude>
<inputExclude>**/src/main/webapp/js/jasmine*.js</inputExclude>
<inputExclude>**/src/main/webapp/css/jasmine.css</inputExclude>
<!-- jQuery (tobago-example-demo) -->
<inputExclude>**/src/main/webapp/*/jquery*.*</inputExclude>
<!-- log files -->
<inputExclude>**/*.log</inputExclude>
<inputExclude>**/test-scenarios-locally/**/*</inputExclude>
<!-- git -->
<inputExclude>**/.gitkeep</inputExclude>
<!-- maven -->
<inputExclude>**/target/**/*</inputExclude>
<!-- idea -->
<inputExclude>.idea/**/*</inputExclude>
<inputExclude>**/*.iml</inputExclude>
<inputExclude>**/*.ipr</inputExclude>
<inputExclude>**/*.iws</inputExclude>
<!-- json -->
<inputExclude>**/*.json</inputExclude>
<!-- photo shop -->
<inputExclude>**/*.psd</inputExclude>
<!-- sample -->
<inputExclude>**/x-sample.txt</inputExclude>
<inputExclude>**/x-sample.pdf</inputExclude>
<!-- readme -->
<inputExclude>**/readme.*</inputExclude>
<inputExclude>**/*.md</inputExclude>
<!-- banner -->
<inputExclude>**/banner.txt</inputExclude>
<!-- tobago-vm index page -->
<inputExclude>**/tobago-vm/docker/apache-proxy/bootstrap*.css</inputExclude>
<!-- local npm for IDE -->
<inputExclude>node/**/*</inputExclude>
<inputExclude>node_modules/**/*</inputExclude>
<inputExclude>src/main/webapp/css/font-awesome.css</inputExclude>
<inputExclude>src/main/css/bootstrap-icons.css</inputExclude>
<inputExclude>src/main/js/tobago.min.js</inputExclude>
<inputExclude>src/main/webapp/js/demo.js</inputExclude>
<inputExclude>**/.eslintignore</inputExclude>
<inputExclude>.asf.yaml</inputExclude>
<inputExclude>**/*.svg</inputExclude>
</inputExcludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.8.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>3.3.1</version>
<configuration>
<preparationGoals>clean install</preparationGoals>
<remoteTagging>true</remoteTagging>
<autoVersionSubmodules>true</autoVersionSubmodules>
<waitBeforeTagging>20</waitBeforeTagging>
<useReleaseProfile>false</useReleaseProfile>
<goals>deploy</goals>
<arguments>-Papache-release,generate-assembly ${arguments}</arguments>
</configuration>
</plugin>
<!--
usage: $ mvn versions:display-dependency-updates
usage: $ mvn versions:display-plugin-updates
-->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.21.0</version>
</plugin>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
<version>12.2.2</version>
<configuration>
<nodeAuditAnalyzerEnabled>false</nodeAuditAnalyzerEnabled> <!-- https://github.com/dependency-check/DependencyCheck/issues/8422 -->
<failBuildOnCVSS>0</failBuildOnCVSS>
<suppressionFile>tobago/dependency-check-suppression-for-tobago-6.x.xml</suppressionFile>
<!-- nvdApiKey can be set in your settings.xml -->
<!-- <nvdApiKey>${nvdApiKey}</nvdApiKey>-->
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.myfaces.buildtools</groupId>
<artifactId>checkstyle-rules</artifactId>
<version>${checkstyle-rules.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<version>3.3.0</version>
</plugin>
</plugins>
</pluginManagement>
</build>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<modules>
<module>tobago-tool</module>
<module>tobago-core</module>
<module>tobago-theme</module>
<module>tobago-example</module>
<module>tobago-assembly</module>
</modules>
<distributionManagement>
<repository>
<id>apache.releases.https</id>
<name>Apache Release Distribution Repository</name>
<url>https://repository.apache.org/service/local/staging/deploy/maven2</url>
</repository>
<snapshotRepository>
<uniqueVersion>false</uniqueVersion>
<id>apache.snapshots.https</id>
<name>${distMgmtSnapshotsName}</name>
<url>${distMgmtSnapshotsUrl}</url>
</snapshotRepository>
</distributionManagement>
<!-- Use this to include the staging repository for testing a new unreleased myfaces core.
Change the number 1100 the the current for that. -->
<!--
<repositories>
<repository>
<id>myfaces-staging</id>
<url>https://repository.apache.org/content/repositories/orgapachemyfaces-1100/</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>myfaces-staging</id>
<url>https://repository.apache.org/content/repositories/orgapachemyfaces-1100/</url>
</pluginRepository>
</pluginRepositories>
-->
<profiles>
<profile>
<id>apache-release</id>
<!--
NOTE: To use you need to enable this profile and pass in the passphrase:
mvn -Papache-release -Dpassphrase=thephrase
with the release plugin add following profile to your settings.xml
<profile>
<id>apache-release</id>
<properties>
<gpg.passphrase>thephrase</gpg.passphrase>
</properties>
</profile>
-->
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>create</goal>
</goals>
</execution>
</executions>
<configuration>
<doCheck>false</doCheck>
<doUpdate>false</doUpdate>
<getRevisionOnlyOnce>true</getRevisionOnlyOnce>
<buildNumberPropertyName>scm.revision</buildNumberPropertyName>
<revisionOnScmFailure>unknown</revisionOnScmFailure>
</configuration>
</plugin>
<plugin>
<groupId>org.owasp</groupId>
<artifactId>dependency-check-maven</artifactId>
<executions>
<execution>
<goals>
<goal>aggregate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>frontend</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>3.5.0</version>
<configuration>
<filesets>
<fileset>
<directory>.</directory>
<includes>
<include>npm/**</include>
<include>dist/**</include>
<include>node/**</include>
<include>node_modules/**</include>
</includes>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin>
<groupId>com.github.eirslett</groupId>
<artifactId>frontend-maven-plugin</artifactId>
<version>2.0.1</version>
<!-- optional -->
<configuration>
<nodeVersion>v24.18.0</nodeVersion>
<!-- optional: Where to download Node.js binary from. Defaults to http://nodejs.org/dist/ -->
<!--<nodeDownloadRoot>https://nodejs.org/dist/</nodeDownloadRoot>-->
<!-- optional: Where to download NPM binary from. Defaults to http://registry.npmjs.org/npm/-/ -->
<!--<npmDownloadRoot>https://registry.npmjs.org/npm/-/</npmDownloadRoot>-->
<!-- optional: Registry override, passed as the registry option during npm install if set. -->
<!--<npmRegistryURL>https://registry.npmjs.org/</npmRegistryURL>-->
<!-- optional: where to install node and npm. Defaults to the working directory -->
<installDirectory>.</installDirectory>
<skip>${frontend.skip}</skip>
</configuration>
<executions>
<execution>
<id>install node and npm</id>
<goals>
<goal>install-node-and-npm</goal>
</goals>
<phase>generate-resources</phase>
</execution>
<execution>
<id>npm install (load dependencies, etc.)</id>
<goals>
<goal>npm</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<arguments>install</arguments>
</configuration>
</execution>
<execution>
<id>npm run build</id>
<goals>
<goal>npm</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<arguments>run build</arguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>generate-assembly</id>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>create</goal>
</goals>
</execution>
</executions>
<configuration>
<doCheck>false</doCheck>
<doUpdate>false</doUpdate>
<getRevisionOnlyOnce>true</getRevisionOnlyOnce>
<buildNumberPropertyName>scm.revision</buildNumberPropertyName>
<revisionOnScmFailure>unknown</revisionOnScmFailure>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>attach-javadoc</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<executions>
<execution>
<id>attach-source</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.apache.apache.resources</groupId>
<artifactId>apache-source-release-assembly-descriptor</artifactId>
<version>1.8</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>source-release-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
<descriptorRefs>
<descriptorRef>${sourceReleaseAssemblyDescriptor}</descriptorRef>
</descriptorRefs>
<tarLongFileMode>gnu</tarLongFileMode>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<contributors>
<contributor>
<name>Helmut Swaczinna</name>
<email>swaczinna@wlp-systems.de</email>
<organization>WLP Systems GmbH</organization>
<organizationUrl>http://www.wlp-systems.de/</organizationUrl>
<timezone>+1</timezone>
</contributor>
</contributors>
</project>