<?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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>at.ac.uibk.gitsearch</groupId> <artifactId>gitsearch</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>Gitsearch</name> <repositories> <!-- jhipster-needle-maven-repository --> </repositories> <pluginRepositories> <!-- jhipster-needle-maven-plugin-repository --> </pluginRepositories> <!-- jhipster-needle-distribution-management --> <properties> <!-- Build properties --> <maven.version>3.3.9</maven.version> <java.version>1.8</java.version> <node.version>v12.16.1</node.version> <npm.version>6.14.5</npm.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <project.testresult.directory>${project.build.directory}/test-results</project.testresult.directory> <maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format> <maven.compiler.source>${java.version}</maven.compiler.source> <maven.compiler.target>${java.version}</maven.compiler.target> <argLine>-Djava.security.egd=file:/dev/./urandom -Xmx256m</argLine> <m2e.apt.activation>jdt_apt</m2e.apt.activation> <run.addResources>false</run.addResources> <!-- These remain empty unless the corresponding profile is active --> <profile.no-liquibase /> <profile.swagger /> <profile.tls /> <!-- Dependency versions --> <jhipster-dependencies.version>3.9.0</jhipster-dependencies.version> <!-- The spring-boot version should match the one managed by https://mvnrepository.com/artifact/io.github.jhipster/jhipster-dependencies/${jhipster-dependencies.version} --> <spring-boot.version>2.2.7.RELEASE</spring-boot.version> <!-- The hibernate version should match the one managed by https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-dependencies/${spring-boot.version} --> <hibernate.version>5.4.15.Final</hibernate.version> <!-- The javassist version should match the one managed by https://mvnrepository.com/artifact/org.hibernate/hibernate-core/${hibernate.version} --> <javassist.version>3.24.0-GA</javassist.version> <!-- The liquibase version should match the one managed by https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-dependencies/${spring-boot.version} --> <liquibase.version>3.9.0</liquibase.version> <liquibase-hibernate5.version>3.8</liquibase-hibernate5.version> <h2.version>1.4.200</h2.version> <validation-api.version>2.0.1.Final</validation-api.version> <jaxb-runtime.version>2.3.3</jaxb-runtime.version> <archunit-junit5.version>0.14.1</archunit-junit5.version> <log4j2-mock.version>0.0.2</log4j2-mock.version> <mapstruct.version>1.3.1.Final</mapstruct.version> <!-- Plugin versions --> <maven-clean-plugin.version>3.1.0</maven-clean-plugin.version> <maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version> <maven-javadoc-plugin.version>3.2.0</maven-javadoc-plugin.version> <maven-eclipse-plugin.version>2.10</maven-eclipse-plugin.version> <maven-enforcer-plugin.version>3.0.0-M3</maven-enforcer-plugin.version> <maven-failsafe-plugin.version>3.0.0-M4</maven-failsafe-plugin.version> <maven-idea-plugin.version>2.2.1</maven-idea-plugin.version> <maven-resources-plugin.version>3.1.0</maven-resources-plugin.version> <maven-surefire-plugin.version>3.0.0-M4</maven-surefire-plugin.version> <maven-war-plugin.version>3.2.3</maven-war-plugin.version> <maven-checkstyle.version>3.1.1</maven-checkstyle.version> <checkstyle.version>8.32</checkstyle.version> <spring-nohttp-checkstyle.version>0.0.4.RELEASE</spring-nohttp-checkstyle.version> <frontend-maven-plugin.version>1.10.0</frontend-maven-plugin.version> <git-commit-id-plugin.version>4.0.0</git-commit-id-plugin.version> <jacoco-maven-plugin.version>0.8.5</jacoco-maven-plugin.version> <jib-maven-plugin.version>2.4.0</jib-maven-plugin.version> <lifecycle-mapping.version>1.0.0</lifecycle-mapping.version> <properties-maven-plugin.version>1.0.0</properties-maven-plugin.version> <sonar-maven-plugin.version>3.7.0.1746</sonar-maven-plugin.version> <jacoco.utReportFolder>${project.build.directory}/jacoco/test</jacoco.utReportFolder> <jacoco.utReportFile>${jacoco.utReportFolder}/test.exec</jacoco.utReportFile> <jacoco.itReportFolder>${project.build.directory}/jacoco/integrationTest</jacoco.itReportFolder> <jacoco.itReportFile>${jacoco.itReportFolder}/integrationTest.exec</jacoco.itReportFile> <junit.utReportFolder>${project.testresult.directory}/test</junit.utReportFolder> <junit.itReportFolder>${project.testresult.directory}/integrationTest</junit.itReportFolder> <!-- jhipster-needle-maven-property --> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>io.github.jhipster</groupId> <artifactId>jhipster-dependencies</artifactId> <version>${jhipster-dependencies.version}</version> <type>pom</type> <scope>import</scope> </dependency> <!-- jhipster-needle-maven-add-dependency-management --> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>io.github.jhipster</groupId> <artifactId>jhipster-framework</artifactId> </dependency> <dependency> <groupId>javax.annotation</groupId> <artifactId>javax.annotation-api</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cache</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.module</groupId> <artifactId>jackson-module-jaxb-annotations</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.datatype</groupId> <artifactId>jackson-datatype-hibernate5</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.datatype</groupId> <artifactId>jackson-datatype-hppc</artifactId> </dependency> <dependency> <groupId>com.fasterxml.jackson.datatype</groupId> <artifactId>jackson-datatype-jsr310</artifactId> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-bean-validators</artifactId> </dependency> <dependency> <groupId>com.zaxxer</groupId> <artifactId>HikariCP</artifactId> </dependency> <dependency> <groupId>org.testcontainers</groupId> <artifactId>mysql</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>javax.cache</groupId> <artifactId>cache-api</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <dependency> <groupId>org.ehcache</groupId> <artifactId>ehcache</artifactId> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-jcache</artifactId> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-jpamodelgen</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> </dependency> <dependency> <groupId>org.hibernate.validator</groupId> <artifactId>hibernate-validator</artifactId> </dependency> <dependency> <groupId>org.liquibase</groupId> <artifactId>liquibase-core</artifactId> <!-- Inherited version from Spring Boot can't be used because of regressions --> <version>${liquibase.version}</version> </dependency> <dependency> <groupId>net.logstash.logback</groupId> <artifactId>logstash-logback-encoder</artifactId> </dependency> <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct</artifactId> </dependency> <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-loader-tools</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-elasticsearch</artifactId> </dependency> <!-- Spring Data Jest dependencies for Elasticsearch --> <dependency> <groupId>com.github.vanroy</groupId> <artifactId>spring-boot-starter-data-jest</artifactId> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> <!-- log4j2-mock needed to create embedded elasticsearch instance with SLF4J --> <dependency> <groupId>de.dentrassi.elasticsearch</groupId> <artifactId>log4j2-mock</artifactId> <version>${log4j2-mock.version}</version> <scope>runtime</scope> </dependency> <!-- end of Spring Data Jest dependencies --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> <exclusions> <exclusion> <groupId>org.junit.vintage</groupId> <artifactId>junit-vintage-engine</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>com.tngtech.archunit</groupId> <artifactId>archunit-junit5-api</artifactId> <version>${archunit-junit5.version}</version> <scope>test</scope> </dependency> <!-- Adding the engine dependency to the surefire-plugin unfortunately does not work in the current version. --> <!-- https://www.archunit.org/userguide/html/000_Index.html#_junit_5 --> <dependency> <groupId>com.tngtech.archunit</groupId> <artifactId>archunit-junit5-engine</artifactId> <version>${archunit-junit5.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.zalando</groupId> <artifactId>problem-spring-web</artifactId> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-api</artifactId> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-impl</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-jackson</artifactId> <scope>runtime</scope> </dependency> <!-- Spring Cloud --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-cloud-connectors</artifactId> </dependency> <dependency> <groupId>org.springframework.security</groupId> <artifactId>spring-security-data</artifactId> </dependency> <dependency> <groupId>io.micrometer</groupId> <artifactId>micrometer-registry-prometheus</artifactId> </dependency> <dependency> <groupId>io.dropwizard.metrics</groupId> <artifactId>metrics-core</artifactId> </dependency> <!-- jhipster-needle-maven-add-dependency --> </dependencies> <build> <defaultGoal>spring-boot:run</defaultGoal> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-eclipse-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-idea-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> </plugin> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.sonarsource.scanner.maven</groupId> <artifactId>sonar-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.liquibase</groupId> <artifactId>liquibase-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> <plugin> <groupId>com.google.cloud.tools</groupId> <artifactId>jib-maven-plugin</artifactId> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>properties-maven-plugin</artifactId> </plugin> <!-- jhipster-needle-maven-add-plugin --> </plugins> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <version>${maven-checkstyle.version}</version> <dependencies> <dependency> <groupId>com.puppycrawl.tools</groupId> <artifactId>checkstyle</artifactId> <version>${checkstyle.version}</version> </dependency> <dependency> <groupId>io.spring.nohttp</groupId> <artifactId>nohttp-checkstyle</artifactId> <version>${spring-nohttp-checkstyle.version}</version> </dependency> </dependencies> <configuration> <configLocation>checkstyle.xml</configLocation> <includes>pom.xml,README.md</includes> <excludes>.git/**/*,target/**/*,node_modules/**/*,node/**/*</excludes> <sourceDirectories>./</sourceDirectories> </configuration> <executions> <execution> <goals> <goal>check</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${maven-compiler-plugin.version}</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> <annotationProcessorPaths> <path> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <version>${spring-boot.version}</version> </path> <path> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <version>${mapstruct.version}</version> </path> <!-- For JPA static metamodel generation --> <path> <groupId>org.hibernate</groupId> <artifactId>hibernate-jpamodelgen</artifactId> <version>${hibernate.version}</version> </path> <path> <groupId>org.glassfish.jaxb</groupId> <artifactId>jaxb-runtime</artifactId> <version>${jaxb-runtime.version}</version> </path> <!-- jhipster-needle-maven-add-annotation-processor --> </annotationProcessorPaths> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>${maven-javadoc-plugin.version}</version> <configuration> <source>${maven.compiler.source}</source> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>${maven-war-plugin.version}</version> <executions> <execution> <id>default-war</id> <goals> <goal>war</goal> </goals> <phase>package</phase> </execution> </executions> <configuration> <warSourceIncludes>WEB-INF/**,META-INF/**</warSourceIncludes> <failOnMissingWebXml>false</failOnMissingWebXml> <warSourceDirectory>target/classes/static/</warSourceDirectory> <webResources> <resource> <directory>src/main/webapp</directory> <includes> <include>WEB-INF/**</include> </includes> </resource> </webResources> </configuration> </plugin> <plugin> <groupId>com.github.eirslett</groupId> <artifactId>frontend-maven-plugin</artifactId> <version>${frontend-maven-plugin.version}</version> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>properties-maven-plugin</artifactId> <version>${properties-maven-plugin.version}</version> <executions> <execution> <phase>initialize</phase> <goals> <goal>read-project-properties</goal> </goals> <configuration> <files> <file>sonar-project.properties</file> </files> </configuration> </execution> </executions> </plugin> <plugin> <groupId>pl.project13.maven</groupId> <artifactId>git-commit-id-plugin</artifactId> <version>${git-commit-id-plugin.version}</version> <executions> <execution> <goals> <goal>revision</goal> </goals> </execution> </executions> <configuration> <failOnNoGitDirectory>false</failOnNoGitDirectory> <failOnUnableToExtractRepoInfo>false</failOnUnableToExtractRepoInfo> <generateGitPropertiesFile>true</generateGitPropertiesFile> <includeOnlyProperties> <includeOnlyProperty>^git.commit.id.abbrev$</includeOnlyProperty> <includeOnlyProperty>^git.commit.id.describe$</includeOnlyProperty> <includeOnlyProperty>^git.branch$</includeOnlyProperty> </includeOnlyProperties> </configuration> </plugin> <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>${jacoco-maven-plugin.version}</version> <executions> <execution> <id>pre-unit-tests</id> <goals> <goal>prepare-agent</goal> </goals> <configuration> <!-- Sets the path to the file which contains the execution data. --> <destFile>${jacoco.utReportFile}</destFile> </configuration> </execution> <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run --> <execution> <id>post-unit-test</id> <phase>test</phase> <goals> <goal>report</goal> </goals> <configuration> <dataFile>${jacoco.utReportFile}</dataFile> <outputDirectory>${jacoco.utReportFolder}</outputDirectory> </configuration> </execution> <execution> <id>pre-integration-tests</id> <goals> <goal>prepare-agent-integration</goal> </goals> <configuration> <!-- Sets the path to the file which contains the execution data. --> <destFile>${jacoco.itReportFile}</destFile> </configuration> </execution> <!-- Ensures that the code coverage report for integration tests is created after integration tests have been run --> <execution> <id>post-integration-tests</id> <phase>post-integration-test</phase> <goals> <goal>report-integration</goal> </goals> <configuration> <dataFile>${jacoco.itReportFile}</dataFile> <outputDirectory>${jacoco.itReportFolder}</outputDirectory> </configuration> </execution> </executions> </plugin> <plugin> <groupId>com.google.cloud.tools</groupId> <artifactId>jib-maven-plugin</artifactId> <version>${jib-maven-plugin.version}</version> <configuration> <from> <image>adoptopenjdk:11-jre-hotspot</image> </from> <to> <image>gitsearch:latest</image> </to> <container> <entrypoint> <shell>bash</shell> <option>-c</option> <arg>/entrypoint.sh</arg> </entrypoint> <ports> <port>8080</port> </ports> <environment> <SPRING_OUTPUT_ANSI_ENABLED>ALWAYS</SPRING_OUTPUT_ANSI_ENABLED> <JHIPSTER_SLEEP>0</JHIPSTER_SLEEP> </environment> <creationTime>USE_CURRENT_TIMESTAMP</creationTime> </container> <extraDirectories> <paths>src/main/jib</paths> <permissions> <permission> <file>/entrypoint.sh</file> <mode>755</mode> </permission> </permissions> </extraDirectories> </configuration> </plugin> <plugin> <groupId>org.liquibase</groupId> <artifactId>liquibase-maven-plugin</artifactId> <version>${liquibase.version}</version> <configuration> <changeLogFile>${project.basedir}/src/main/resources/config/liquibase/master.xml</changeLogFile> <diffChangeLogFile>${project.basedir}/src/main/resources/config/liquibase/changelog/${maven.build.timestamp}_changelog.xml</diffChangeLogFile> <driver>org.h2.Driver</driver> <url>jdbc:h2:file:${project.build.directory}/h2db/db/gitsearch</url> <defaultSchemaName></defaultSchemaName> <username>gitsearch</username> <password></password> <referenceUrl>hibernate:spring:at.ac.uibk.gitsearch.domain?dialect=org.hibernate.dialect.H2Dialect&hibernate.physical_naming_strategy=org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy&hibernate.implicit_naming_strategy=org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy</referenceUrl> <verbose>true</verbose> <logging>debug</logging> <contexts>!test</contexts> </configuration> <dependencies> <dependency> <groupId>org.liquibase</groupId> <artifactId>liquibase-core</artifactId> <version>${liquibase.version}</version> </dependency> <dependency> <groupId>org.liquibase.ext</groupId> <artifactId>liquibase-hibernate5</artifactId> <version>${liquibase-hibernate5.version}</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> <version>${spring-boot.version}</version> </dependency> <dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> <version>${validation-api.version}</version> </dependency> <dependency> <groupId>org.javassist</groupId> <artifactId>javassist</artifactId> <version>${javassist.version}</version> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <version>${h2.version}</version> </dependency> </dependencies> </plugin> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>${maven-clean-plugin.version}</version> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-eclipse-plugin</artifactId> <version>${maven-eclipse-plugin.version}</version> <configuration> <downloadSources>true</downloadSources> <downloadJavadocs>true</downloadJavadocs> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <version>${maven-enforcer-plugin.version}</version> <executions> <execution> <id>enforce-versions</id> <goals> <goal>enforce</goal> </goals> </execution> <execution> <id>enforce-dependencyConvergence</id> <configuration> <rules> <DependencyConvergence /> </rules> <fail>false</fail> </configuration> <goals> <goal>enforce</goal> </goals> </execution> </executions> <configuration> <rules> <requireMavenVersion> <message>You are running an older version of Maven. JHipster requires at least Maven ${maven.version}</message> <version>[${maven.version},)</version> </requireMavenVersion> <requireJavaVersion> <message>You are running an incompatible version of Java. JHipster supports JDK 8 to 14.</message> <version>[1.8,15)</version> </requireJavaVersion> </rules> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-idea-plugin</artifactId> <version>${maven-idea-plugin.version}</version> <configuration> <exclude>node_modules</exclude> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>${maven-resources-plugin.version}</version> <executions> <execution> <id>default-resources</id> <phase>validate</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/classes</outputDirectory> <useDefaultDelimiters>false</useDefaultDelimiters> <delimiters> <delimiter>#</delimiter> </delimiters> <resources> <resource> <directory>src/main/resources/</directory> <filtering>true</filtering> <includes> <include>config/*.yml</include> </includes> </resource> <resource> <directory>src/main/resources/</directory> <filtering>false</filtering> <excludes> <exclude>config/*.yml</exclude> </excludes> </resource> </resources> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>${maven-surefire-plugin.version}</version> <configuration> <!-- Force alphabetical order to have a reproducible build --> <runOrder>alphabetical</runOrder> <reportsDirectory>${junit.utReportFolder}</reportsDirectory> <excludes> <exclude>**/*IT*</exclude> <exclude>**/*IntTest*</exclude> </excludes> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-failsafe-plugin</artifactId> <version>${maven-failsafe-plugin.version}</version> <configuration> <!-- Due to spring-boot repackage, without adding this property test classes are not found See https://github.com/spring-projects/spring-boot/issues/6254 --> <classesDirectory>${project.build.outputDirectory}</classesDirectory> <!-- Force alphabetical order to have a reproducible build --> <runOrder>alphabetical</runOrder> <reportsDirectory>${junit.itReportFolder}</reportsDirectory> <includes> <include>**/*IT*</include> <include>**/*IntTest*</include> </includes> </configuration> <executions> <execution> <id>integration-test</id> <goals> <goal>integration-test</goal> </goals> </execution> <execution> <id>verify</id> <goals> <goal>verify</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.sonarsource.scanner.maven</groupId> <artifactId>sonar-maven-plugin</artifactId> <version>${sonar-maven-plugin.version}</version> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>${spring-boot.version}</version> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> <configuration> <mainClass>${start-class}</mainClass> <fork>true</fork> <!-- Enable the line below to have remote debugging of your application on port 5005 <jvmArguments>-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005</jvmArguments> --> </configuration> </plugin> <!-- jhipster-needle-maven-add-plugin-management --> </plugins> </pluginManagement> </build> <profiles> <profile> <id>no-liquibase</id> <properties> <profile.no-liquibase>,no-liquibase</profile.no-liquibase> </properties> </profile> <profile> <id>swagger</id> <properties> <profile.swagger>,swagger</profile.swagger> </properties> </profile> <profile> <id>tls</id> <properties> <profile.tls>,tls</profile.tls> </properties> </profile> <profile> <id>webpack</id> <activation> <activeByDefault>true</activeByDefault> </activation> <dependencies> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>com.github.eirslett</groupId> <artifactId>frontend-maven-plugin</artifactId> <executions> <execution> <id>install node and npm</id> <goals> <goal>install-node-and-npm</goal> </goals> <configuration> <nodeVersion>${node.version}</nodeVersion> <npmVersion>${npm.version}</npmVersion> </configuration> </execution> <execution> <id>npm install</id> <goals> <goal>npm</goal> </goals> </execution> <execution> <id>webpack build dev</id> <goals> <goal>npm</goal> </goals> <phase>generate-resources</phase> <configuration> <arguments>run webpack:build</arguments> <environmentVariables> <APP_VERSION>${project.version}</APP_VERSION> </environmentVariables> <npmInheritsProxyConfigFromMaven>false</npmInheritsProxyConfigFromMaven> </configuration> </execution> </executions> </plugin> </plugins> </build> <properties> <!-- default Spring profiles --> <spring.profiles.active>dev${profile.no-liquibase}</spring.profiles.active> </properties> </profile> <profile> <id>dev</id> <activation> <activeByDefault>true</activeByDefault> </activation> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-undertow</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> </dependency> </dependencies> <properties> <!-- default Spring profiles --> <spring.profiles.active>dev${profile.tls}${profile.no-liquibase}</spring.profiles.active> </properties> </profile> <profile> <id>prod</id> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-undertow</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <artifactId>maven-clean-plugin</artifactId> <configuration> <filesets> <fileset> <directory>target/classes/static/</directory> </fileset> </filesets> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>build-info</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>com.github.eirslett</groupId> <artifactId>frontend-maven-plugin</artifactId> <executions> <execution> <id>install node and npm</id> <goals> <goal>install-node-and-npm</goal> </goals> <configuration> <nodeVersion>${node.version}</nodeVersion> <npmVersion>${npm.version}</npmVersion> </configuration> </execution> <execution> <id>npm install</id> <goals> <goal>npm</goal> </goals> <configuration> <arguments>install</arguments> </configuration> </execution> <execution> <id>webpack build test</id> <goals> <goal>npm</goal> </goals> <phase>test</phase> <configuration> <arguments>run webpack:test</arguments> <npmInheritsProxyConfigFromMaven>false</npmInheritsProxyConfigFromMaven> </configuration> </execution> <execution> <id>webpack build prod</id> <goals> <goal>npm</goal> </goals> <phase>generate-resources</phase> <configuration> <arguments>run webpack:prod</arguments> <environmentVariables> <APP_VERSION>${project.version}</APP_VERSION> </environmentVariables> <npmInheritsProxyConfigFromMaven>false</npmInheritsProxyConfigFromMaven> </configuration> </execution> </executions> </plugin> <plugin> <groupId>pl.project13.maven</groupId> <artifactId>git-commit-id-plugin</artifactId> </plugin> </plugins> </build> <properties> <!-- default Spring profiles --> <spring.profiles.active>prod${profile.swagger}${profile.tls}${profile.no-liquibase}</spring.profiles.active> </properties> </profile> <profile> <id>war</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> </plugin> </plugins> </build> </profile> <profile> <!-- Profile for applying IDE-specific configuration. At the moment it configures MapStruct and Hibernate JPA Metamodel Generator, which you need when working with DTOs and entity filtering. --> <id>IDE</id> <dependencies> <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-jpamodelgen</artifactId> </dependency> </dependencies> </profile> <profile> <!-- This is automatically activated when working in Eclipse --> <id>eclipse</id> <activation> <property> <name>m2e.version</name> </property> </activation> <dependencies> <!-- The following dependency is added due to issue #9175--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-undertow</artifactId> </dependency> </dependencies> <build> <pluginManagement> <plugins> <!-- This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself. Remove when the m2e plugin can correctly bind to Maven lifecycle --> <plugin> <groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId> <version>${lifecycle-mapping.version}</version> <configuration> <lifecycleMappingMetadata> <pluginExecutions> <pluginExecution> <pluginExecutionFilter> <groupId>org.jacoco</groupId> <artifactId> jacoco-maven-plugin </artifactId> <versionRange> ${jacoco-maven-plugin.version} </versionRange> <goals> <goal>prepare-agent</goal> </goals> </pluginExecutionFilter> <action> <ignore/> </action> </pluginExecution> <pluginExecution> <pluginExecutionFilter> <groupId>com.github.eirslett</groupId> <artifactId>frontend-maven-plugin</artifactId> <versionRange>${frontend-maven-plugin.version}</versionRange> <goals> <goal>install-node-and-npm</goal> <goal>npm</goal> </goals> </pluginExecutionFilter> <action> <ignore/> </action> </pluginExecution> </pluginExecutions> </lifecycleMappingMetadata> </configuration> </plugin> </plugins> </pluginManagement> </build> </profile> <!-- jhipster-needle-maven-add-profile --> </profiles> </project>