nbdemetra-app
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>eu.europa.ec.joinup.sat</groupId>
<artifactId>nbdemetra-app</artifactId>
<version>2.2.6</version>
</dependency><?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>
<parent>
<groupId>eu.europa.ec.joinup.sat</groupId>
<artifactId>nbdemetra-parent</artifactId>
<version>2.2.6</version>
</parent>
<artifactId>nbdemetra-app</artifactId>
<packaging>nbm-application</packaging>
<name>NbDemetra</name>
<description>JDemetra+</description>
<url>https://github.com/jdemetra/jdemetra-app</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<netbeans.run.params.ide/>
<netbeans.run.params>${netbeans.run.params.ide}</netbeans.run.params>
<java.bundled.version>jdk-21.0.6+7</java.bundled.version>
</properties>
<dependencies>
<!-- NB platform -->
<dependency>
<groupId>org.netbeans.cluster</groupId>
<artifactId>platform</artifactId>
<type>pom</type>
<exclusions>
<exclusion>
<groupId>org.netbeans.api</groupId>
<artifactId>org-netbeans-libs-testng</artifactId>
</exclusion>
<exclusion>
<groupId>org.netbeans.modules</groupId>
<artifactId>org-netbeans-modules-junitlib</artifactId>
</exclusion>
<exclusion>
<groupId>org.netbeans.api</groupId>
<artifactId>org-netbeans-modules-javahelp</artifactId>
</exclusion>
<exclusion>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- force specific version of commons-io to avoid dependency convergence issue with POI -->
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.15.0</version>
</dependency>
<!-- NB additional modules -->
<dependency>
<groupId>org.netbeans.modules</groupId>
<artifactId>org-netbeans-modules-dbapi</artifactId>
<version>${netbeans.version}</version>
<exclusions>
<exclusion>
<groupId>org.netbeans.api</groupId>
<artifactId>org-netbeans-modules-javahelp</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.netbeans.modules</groupId>
<artifactId>org-netbeans-modules-projectapi-nb</artifactId>
<version>${netbeans.version}</version>
</dependency>
<!-- JD+ modules -->
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>nbdemetra-branding</artifactId>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>nbdemetra-core</artifactId>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>nbdemetra-ui</artifactId>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>nbdemetra-odbc</artifactId>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>nbdemetra-jdbc</artifactId>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>nbdemetra-common</artifactId>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>nbdemetra-spreadsheet</artifactId>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>nbdemetra-sa</artifactId>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>nbdemetra-sdmx</artifactId>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>nbdemetra-anomalydetection</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<!-- Generates standalone application -->
<plugin>
<groupId>org.apache.netbeans.utilities</groupId>
<artifactId>nbm-maven-plugin</artifactId>
<configuration>
<etcConfFile>src/main/resources/nbdemetra.conf</etcConfFile>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<!-- Release binaries on GitHub -->
<!-- Note that all plugins are run on 'install' phase -->
<profile>
<id>full-release</id>
<properties>
<project.x.src>${project.build.directory}/${project.build.finalName}</project.x.src>
<project.x.dst>jdemetra-${project.version}</project.x.dst>
<jdkname>${java.bundled.version}-jre</jdkname>
</properties>
<build>
<plugins>
<!-- Generate setups -->
<plugin>
<groupId>org.apache.netbeans.utilities</groupId>
<artifactId>nbm-maven-plugin</artifactId>
<executions>
<execution>
<id>generate-setup</id>
<phase>install</phase>
<goals>
<goal>build-installers</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Extract changelog -->
<plugin>
<groupId>com.github.nbbrd.heylogs</groupId>
<artifactId>heylogs-maven-plugin</artifactId>
<executions>
<execution>
<id>extract-changelog</id>
<phase>install</phase>
<goals>
<goal>extract</goal>
</goals>
<configuration>
<inputFile>${project.parent.basedir}/CHANGELOG.md</inputFile>
</configuration>
</execution>
</executions>
</plugin>
<!-- Gather binaries and JRE -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack-binaries</id>
<phase>install</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>eu.europa.ec.joinup.sat</groupId>
<artifactId>nbdemetra-app</artifactId>
<type>zip</type>
</artifactItem>
</artifactItems>
<outputDirectory>${project.build.directory}/windows</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.jreleaser</groupId>
<artifactId>jdks-maven-plugin</artifactId>
<executions>
<execution>
<id>download-windows-jre</id>
<phase>install</phase>
<goals>
<goal>setup-disco</goal>
</goals>
<configuration>
<pkgs>
<pkg>
<name>temurin</name>
<distribution>temurin</distribution>
<platform>windows-x86_64</platform>
<version>${java.bundled.version}</version>
<packageType>jre</packageType>
</pkg>
</pkgs>
<unpack>true</unpack>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>check-binaries-jre</id>
<phase>install</phase>
<goals>
<goal>enforce</goal>
</goals>
<inherited>false</inherited>
<configuration>
<rules>
<requireFilesExist>
<files>
<file>${project.build.directory}/windows/nbdemetra</file>
<file>${project.build.directory}/jdks/temurin/${jdkname}</file>
</files>
</requireFilesExist>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<!-- Create binaries bundled with JRE -->
<plugin>
<groupId>io.github.floverfelt</groupId>
<artifactId>find-and-replace-maven-plugin</artifactId>
<version>1.2.0</version>
<executions>
<execution>
<id>configure-desktop-bin</id>
<phase>install</phase>
<goals>
<goal>find-and-replace</goal>
</goals>
<configuration>
<replacementType>file-contents</replacementType>
<baseDir>target/windows/nbdemetra/etc/</baseDir>
<fileMask>nbdemetra.conf</fileMask>
<encoding>UTF-8</encoding>
<findRegex>#jdkhome="\/path\/to\/jdk"</findRegex>
<replaceValue>jdkhome=${jdkname}</replaceValue>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>pack-desktop-bin</id>
<phase>install</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<descriptors>
<descriptor>src/assembly/desktop-windows-assembly.xml</descriptor>
</descriptors>
<attach>false</attach>
</configuration>
</execution>
</executions>
</plugin>
<!-- Release assets -->
<plugin>
<groupId>org.jreleaser</groupId>
<artifactId>jreleaser-maven-plugin</artifactId>
<executions>
<execution>
<id>release-assets</id>
<phase>install</phase>
<goals>
<goal>full-release</goal>
</goals>
<configuration>
<jreleaser>
<release>
<github>
<skipTag>true</skipTag>
<changelog>
<external>${project.build.directory}/CHANGELOG.md</external>
</changelog>
<!-- Fix default value -->
<branch>master</branch>
</github>
</release>
<signing>
<active>ALWAYS</active>
<!-- Fix default value -->
<armored>true</armored>
</signing>
<distributions>
<!-- Name is here ! -->
<jdemetra>
<type>JAVA_BINARY</type>
<artifacts>
<artifact>
<path>${project.x.src}.zip</path>
<transform>${project.x.dst}-bin.zip</transform>
</artifact>
<artifact>
<path>${project.x.src}-bin-windows.zip</path>
<transform>${project.x.dst}-bin-windows.zip</transform>
<platform>windows</platform>
</artifact>
</artifacts>
</jdemetra>
<jdemetra-setup>
<type>JAVA_BINARY</type>
<artifacts>
<artifact>
<path>${project.x.src}-linux.sh</path>
<transform>${project.x.dst}-setup-linux.sh</transform>
<platform>linux</platform>
</artifact>
<artifact>
<path>${project.x.src}-macosx.tgz</path>
<transform>${project.x.dst}-setup-macosx.tgz</transform>
<platform>osx</platform>
</artifact>
<artifact>
<path>${project.x.src}-windows.exe</path>
<transform>${project.x.dst}-setup-windows.exe</transform>
<platform>windows</platform>
</artifact>
</artifacts>
</jdemetra-setup>
</distributions>
</jreleaser>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>