1 <?xml version="1.0" encoding="UTF-8"?>
3 ~ ================================================================================
4 ~ Copyright (c) 2018-2020 AT&T Intellectual Property. All rights reserved.
5 ~ ================================================================================
6 ~ Licensed under the Apache License, Version 2.0 (the "License");
7 ~ you may not use this file except in compliance with the License.
8 ~ You may obtain a copy of the License at
10 ~ http://www.apache.org/licenses/LICENSE-2.0
12 ~ Unless required by applicable law or agreed to in writing, software
13 ~ distributed under the License is distributed on an "AS IS" BASIS,
14 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 ~ See the License for the specific language governing permissions and
16 ~ limitations under the License.
17 ~ ============LICENSE_END=========================================================
20 <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
21 xmlns="http://maven.apache.org/POM/4.0.0"
22 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
24 <modelVersion>4.0.0</modelVersion>
27 <groupId>org.onap.dcaegen2.analytics.tca-gen2</groupId>
28 <artifactId>tca-gen2-parent</artifactId>
29 <version>1.0.0-SNAPSHOT</version>
32 <artifactId>eelf-logger</artifactId>
33 <version>1.0.0-SNAPSHOT</version>
35 <name>EELF Logger Parent</name>
36 <packaging>pom</packaging>
39 <module>eelf-logger-api</module>
40 <module>eelf-logger-model</module>
41 <module>eelf-logger-logback-impl</module>
48 <!-- PROJECT SETTINGS-->
49 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
50 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
51 <main.basedir>${project.basedir}</main.basedir>
54 <surefire.redirectTestOutputToFile>true</surefire.redirectTestOutputToFile>
56 <!-- PROJECT DEPENDENCIES -->
57 <slf4j.version>1.7.5</slf4j.version>
58 <logback.version>1.2.3</logback.version>
59 <lombok.version>1.16.10</lombok.version>
62 <!--TESTING DEPENDENCIES -->
63 <junit.version>4.12</junit.version>
64 <mockito.version>2.2.11</mockito.version>
65 <assertj-core.version>2.6.0</assertj-core.version>
68 <!-- PLUGINS VERSIONS -->
69 <compiler.plugin.version>3.3</compiler.plugin.version>
70 <surefire.plugin.version>2.19.1</surefire.plugin.version>
71 <failsafe.plugin.version>2.19.1</failsafe.plugin.version>
72 <findbugs.plugin.version>3.0.2</findbugs.plugin.version>
74 <pmd.plugin.version>3.5</pmd.plugin.version>
75 <javadoc.plugin.version>2.10.4</javadoc.plugin.version>
76 <source.plugin.version>2.4</source.plugin.version>
77 <jar.plugin.version>2.4</jar.plugin.version>
78 <deploy.plugin.version>2.8</deploy.plugin.version>
79 <lombok.plugin.version>1.16.10.0</lombok.plugin.version>
80 <maven.site.plugin>3.5.1</maven.site.plugin>
82 <!--PLUGIN SETTINGS -->
83 <compiler.source.version>1.7</compiler.source.version>
84 <compiler.target.version>1.7</compiler.target.version>
85 <unit.test.pattern>**/*Test.java</unit.test.pattern>
86 <skip.unit.tests>false</skip.unit.tests>
87 <integration.test.pattern>**/*IT.java</integration.test.pattern>
88 <skip.integration.tests>true</skip.integration.tests>
89 <pmd.violation.buildfail>true</pmd.violation.buildfail>
90 <findbugs.failOnError>true</findbugs.failOnError>
91 <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
96 <dependencyManagement>
102 <groupId>org.slf4j</groupId>
103 <artifactId>slf4j-api</artifactId>
104 <version>${slf4j.version}</version>
108 <groupId>ch.qos.logback</groupId>
109 <artifactId>logback-classic</artifactId>
110 <version>${logback.version}</version>
113 <!-- CODE GENERATION -->
115 <groupId>org.projectlombok</groupId>
116 <artifactId>lombok</artifactId>
117 <version>${lombok.version}</version>
118 <scope>provided</scope>
122 <!-- TEST DEPENDENCIES -->
124 <groupId>junit</groupId>
125 <artifactId>junit</artifactId>
126 <version>${junit.version}</version>
131 <groupId>org.mockito</groupId>
132 <artifactId>mockito-core</artifactId>
133 <version>${mockito.version}</version>
138 <groupId>org.assertj</groupId>
139 <artifactId>assertj-core</artifactId>
140 <version>${assertj-core.version}</version>
146 </dependencyManagement>
149 <!-- COMMON DEPENDENCIES FOR ALL SUB-PROJECTS -->
151 <!-- TEST DEPENDENCIES -->
153 <groupId>junit</groupId>
154 <artifactId>junit</artifactId>
157 <groupId>org.mockito</groupId>
158 <artifactId>mockito-core</artifactId>
161 <groupId>org.assertj</groupId>
162 <artifactId>assertj-core</artifactId>
172 <!-- COMPILER PLUGIN -->
174 <groupId>org.apache.maven.plugins</groupId>
175 <artifactId>maven-compiler-plugin</artifactId>
176 <version>${compiler.plugin.version}</version>
178 <source>${compiler.target.version}</source>
179 <target>${compiler.source.version}</target>
183 <!-- MAVEN SOURCE PLUGIN -->
185 <groupId>org.apache.maven.plugins</groupId>
186 <artifactId>maven-source-plugin</artifactId>
187 <version>${source.plugin.version}</version>
189 <excludeResources>true</excludeResources>
193 <id>attach-sources</id>
194 <phase>verify</phase>
196 <goal>jar-no-fork</goal>
203 <!-- MAVEN JAVADOC PLUGIN -->
205 <groupId>org.apache.maven.plugins</groupId>
206 <artifactId>maven-javadoc-plugin</artifactId>
207 <version>${javadoc.plugin.version}</version>
209 <!-- minimize console output messages -->
211 <verbose>false</verbose>
212 <useStandardDocletOptions>false</useStandardDocletOptions>
219 <goal>aggregate</goal>
223 <id>attach-javadoc</id>
232 <!-- SUREFIRE TEST PLUGIN -->
234 <groupId>org.apache.maven.plugins</groupId>
235 <artifactId>maven-surefire-plugin</artifactId>
236 <version>${surefire.plugin.version}</version>
238 <skipTests>${skip.unit.tests}</skipTests>
239 <argLine>-Xmx2048m -Djava.awt.headless=true -XX:+UseConcMarkSweepGC
240 -XX:OnOutOfMemoryError="kill -9 %p" -XX:+HeapDumpOnOutOfMemoryError
242 <redirectTestOutputToFile>${surefire.redirectTestOutputToFile}</redirectTestOutputToFile>
243 <parallel>methods</parallel>
244 <threadCount>8</threadCount>
245 <forkCount>8</forkCount>
246 <reuseForks>true</reuseForks>
247 <reportFormat>xml</reportFormat>
248 <trimStackTrace>false</trimStackTrace>
249 <systemPropertyVariables>
250 <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
251 <logback.configurationFile>
252 ${basedir}/src/test/resources/logback-test.xml
253 </logback.configurationFile>
254 </systemPropertyVariables>
256 <include>${unit.test.pattern}</include>
259 <exclude>${integration.test.pattern}</exclude>
261 <!-- Sets the VM argument line used when unit tests are run. -->
262 <argLine>${surefireArgLine}</argLine>
266 <groupId>org.apache.maven.surefire</groupId>
267 <artifactId>surefire-junit47</artifactId>
268 <version>${surefire.plugin.version}</version>
273 <!-- FAIL SAFE PLUGIN FOR INTEGRATION TEST -->
275 <groupId>org.apache.maven.plugins</groupId>
276 <artifactId>maven-failsafe-plugin</artifactId>
277 <version>${failsafe.plugin.version}</version>
280 <id>integration-tests</id>
282 <goal>integration-test</goal>
286 <skipTests>${skip.integration.tests}</skipTests>
287 <!-- Sets the VM argument line used when integration tests are run. -->
288 <!--suppress MavenModelInspection -->
289 <argLine>${failsafeArgLine}</argLine>
296 <!-- FIND BUGS (STATIC CODE ANALYSIS) PLUGIN -->
298 <groupId>org.codehaus.mojo</groupId>
299 <artifactId>findbugs-maven-plugin</artifactId>
300 <version>${findbugs.plugin.version}</version>
303 <threshold>Low</threshold>
304 <xmlOutput>true</xmlOutput>
305 <!-- BUILD FAIL ON FINDBUGS ERRORS -->
306 <failOnError>${findbugs.failOnError}</failOnError>
307 <excludeFilterFile>${main.basedir}/findbugs-exclude.xml</excludeFilterFile>
308 <outputDirectory>${project.reporting.outputDirectory}/findbugs</outputDirectory>
309 <findbugsXmlOutputDirectory>${project.reporting.outputDirectory}/findbugs
310 </findbugsXmlOutputDirectory>
314 <id>analyze-compile</id>
315 <phase>compile</phase>
323 <!-- PMD PLUGIN SETUP -->
325 <groupId>org.apache.maven.plugins</groupId>
326 <artifactId>maven-pmd-plugin</artifactId>
327 <version>${pmd.plugin.version}</version>
329 <sourceEncoding>${project.build.sourceEncoding}</sourceEncoding>
330 <targetJdk>${compiler.target.version}</targetJdk>
331 <linkXRef>false</linkXRef>
332 <!-- BUILD FAIL ON PMD VIOLATION -->
333 <failOnViolation>${pmd.violation.buildfail}</failOnViolation>
334 <targetDirectory>${project.reporting.outputDirectory}/pmd</targetDirectory>
335 <minimumTokens>200</minimumTokens>
344 <printFailingErrors>true</printFailingErrors>
345 <excludeFromFailureFile>${main.basedir}/pmd-exclude.properties</excludeFromFailureFile>
351 <goal>cpd-check</goal>
354 <printFailingErrors>true</printFailingErrors>
355 <excludeFromFailureFile>${main.basedir}/cpd-exclude.properties</excludeFromFailureFile>
364 <!-- LOMBOK PLUGIN -->
366 <groupId>org.projectlombok</groupId>
367 <artifactId>lombok-maven-plugin</artifactId>
368 <version>${lombok.plugin.version}</version>
372 <phase>generate-sources</phase>
374 <goal>delombok</goal>
377 <addOutputDirectory>false</addOutputDirectory>
378 <sourceDirectory>src/main/java</sourceDirectory>
386 <groupId>org.apache.maven.plugins</groupId>
387 <artifactId>maven-jar-plugin</artifactId>
388 <version>${jar.plugin.version}</version>
392 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
395 <Implementation-Build-Version>${project.version}</Implementation-Build-Version>
401 <!-- DEPLOY PLUGIN -->
403 <groupId>org.apache.maven.plugins</groupId>
404 <artifactId>maven-deploy-plugin</artifactId>
405 <version>${deploy.plugin.version}</version>
407 <deployAtEnd>true</deployAtEnd>
418 <groupId>org.apache.maven.plugins</groupId>
419 <artifactId>maven-compiler-plugin</artifactId>
423 <groupId>org.apache.maven.plugins</groupId>
424 <artifactId>maven-jar-plugin</artifactId>
428 <groupId>org.apache.maven.plugins</groupId>
429 <artifactId>maven-surefire-plugin</artifactId>
433 <groupId>org.apache.maven.plugins</groupId>
434 <artifactId>maven-failsafe-plugin</artifactId>
438 <groupId>org.apache.maven.plugins</groupId>
439 <artifactId>maven-deploy-plugin</artifactId>
444 <groupId>org.apache.maven.plugins</groupId>
445 <artifactId>maven-source-plugin</artifactId>
449 <groupId>org.apache.maven.plugins</groupId>
450 <artifactId>maven-javadoc-plugin</artifactId>
454 <groupId>org.apache.maven.plugins</groupId>
455 <artifactId>maven-pmd-plugin</artifactId>
459 <groupId>org.codehaus.mojo</groupId>
460 <artifactId>findbugs-maven-plugin</artifactId>
468 <id>disable-java8-doclint</id>
473 <additionalparam>-Xdoclint:none</additionalparam>