Enable checkstyle
[controller.git] / atomix-storage / pom.xml
1 <!--
2   ~ Copyright 2017-2021 Open Networking Foundation
3   ~ Copyright 2023 PANTHEON.tech, s.r.o.
4   ~
5   ~ Licensed under the Apache License, Version 2.0 (the "License");
6   ~ you may not use this file except in compliance with the License.
7   ~ You may obtain a copy of the License at
8   ~
9   ~     http://www.apache.org/licenses/LICENSE-2.0
10   ~
11   ~ Unless required by applicable law or agreed to in writing, software
12   ~ distributed under the License is distributed on an "AS IS" BASIS,
13   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   ~ See the License for the specific language governing permissions and
15   ~ limitations under the License.
16   -->
17 <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">
18   <modelVersion>4.0.0</modelVersion>
19
20   <parent>
21     <groupId>org.opendaylight.controller</groupId>
22     <artifactId>bundle-parent</artifactId>
23     <version>9.0.3-SNAPSHOT</version>
24     <relativePath>../bundle-parent</relativePath>
25   </parent>
26
27   <artifactId>atomix-storage</artifactId>
28   <name>Atomix Storage</name>
29   <packaging>bundle</packaging>
30
31   <properties>
32     <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
33   </properties>
34
35   <dependencies>
36     <dependency>
37       <groupId>com.google.guava</groupId>
38       <artifactId>guava</artifactId>
39     </dependency>
40     <dependency>
41       <groupId>io.netty</groupId>
42       <artifactId>netty-buffer</artifactId>
43     </dependency>
44     <dependency>
45       <groupId>io.netty</groupId>
46       <artifactId>netty-common</artifactId>
47     </dependency>
48     <dependency>
49       <groupId>org.eclipse.jdt</groupId>
50       <artifactId>org.eclipse.jdt.annotation</artifactId>
51     </dependency>
52     <dependency>
53       <groupId>com.esotericsoftware</groupId>
54       <artifactId>kryo</artifactId>
55       <version>4.0.3</version>
56       <scope>provided</scope>
57     </dependency>
58     <dependency>
59       <groupId>com.esotericsoftware</groupId>
60       <artifactId>minlog</artifactId>
61       <version>1.3.1</version>
62       <scope>provided</scope>
63     </dependency>
64     <dependency>
65       <groupId>com.esotericsoftware</groupId>
66       <artifactId>reflectasm</artifactId>
67       <version>1.11.9</version>
68       <scope>provided</scope>
69     </dependency>
70     <dependency>
71       <groupId>org.objenesis</groupId>
72       <artifactId>objenesis</artifactId>
73       <version>2.6</version>
74       <scope>provided</scope>
75     </dependency>
76
77     <dependency>
78       <groupId>com.google.guava</groupId>
79       <artifactId>guava-testlib</artifactId>
80     </dependency>
81   </dependencies>
82
83   <build>
84     <plugins>
85       <!-- This project has a different license -->
86       <plugin>
87         <artifactId>maven-dependency-plugin</artifactId>
88         <executions>
89           <execution>
90             <id>unpack-license</id>
91             <configuration>
92               <skip>true</skip>
93             </configuration>
94           </execution>
95         </executions>
96       </plugin>
97       <plugin>
98         <artifactId>maven-antrun-plugin</artifactId>
99         <executions>
100           <execution>
101             <id>copy-license</id>
102             <phase>prepare-package</phase>
103             <goals>
104               <goal>run</goal>
105             </goals>
106             <configuration>
107               <target>
108                 <copy file="LICENSE" tofile="${project.build.directory}/classes/LICENSE"/>
109               </target>
110             </configuration>
111           </execution>
112         </executions>
113       </plugin>
114       <plugin>
115         <artifactId>maven-checkstyle-plugin</artifactId>
116         <executions>
117           <execution>
118             <id>check-license</id>
119             <goals>
120               <goal>check</goal>
121             </goals>
122             <configuration>
123               <skip>true</skip>
124             </configuration>
125           </execution>
126         </executions>
127       </plugin>
128
129       <plugin>
130         <groupId>org.apache.felix</groupId>
131         <artifactId>maven-bundle-plugin</artifactId>
132         <extensions>true</extensions>
133         <configuration>
134           <instructions>
135             <Export-Package>
136               io.atomix.storage.journal
137             </Export-Package>
138             <Import-Package>
139               sun.nio.ch;resolution:=optional,
140               sun.misc;resolution:=optional,
141               !COM.newmonics.*,
142               !android.os,
143               *
144             </Import-Package>
145
146             <!-- Kryo is using ancient objenesis, so let's embed it to prevent duplicates -->
147             <Embed-Dependency>
148                 *;inline=true;groupId=com.esotericsoftware,
149                 *;inline=true;groupId=org.objenesis,
150             </Embed-Dependency>
151           </instructions>
152         </configuration>
153       </plugin>
154     </plugins>
155   </build>
156 </project>