[LIB-13] Rename some common classes
[chesshog-scanner.git] / pom.xml
1 <?xml version='1.0' encoding='UTF-8'?>
2
3 <!--
4   ~ Copyright (c) 2019-2020. Developed by Hedgecode.
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
9   ~
10   ~   http://www.apache.org/licenses/LICENSE-2.0
11   ~
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   -->
18
19 <project xmlns="http://maven.apache.org/POM/4.0.0"
20          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
21          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
22     <modelVersion>4.0.0</modelVersion>
23
24     <parent>
25         <groupId>org.hedgecode.maven</groupId>
26         <artifactId>lib-parent</artifactId>
27         <version>3</version>
28         <relativePath>../lib-parent/pom.xml</relativePath>
29     </parent>
30
31     <groupId>org.hedgecode.chess</groupId>
32     <artifactId>chesshog-scanner</artifactId>
33     <version>0.1-SNAPSHOT</version>
34     <packaging>jar</packaging>
35
36     <name>Hedgecode ChessHog Scanner</name>
37     <description>
38         Hedgecode ChessHog Scanner is a Java library for parsing PGN format chess games from various chess internet portals.
39     </description>
40     <inceptionYear>2019</inceptionYear>
41
42     <url>https://lib.hedgecode.org/${project.artifactId}/</url>
43
44     <scm>
45         <connection>scm:svn:http://svn.hedgecode.org/lib/${project.artifactId}/trunk/</connection>
46         <developerConnection>scm:svn:https://svn.hedgecode.org/lib/${project.artifactId}/trunk/</developerConnection>
47         <url>http://svn.hedgecode.org/lib/${project.artifactId}/trunk/</url>
48     </scm>
49
50     <issueManagement>
51         <system>JIRA</system>
52         <url>https://issues.hedgecode.org/browse/${issueKey}/component/${issueComponentId}</url>
53     </issueManagement>
54
55     <distributionManagement>
56         <site>
57             <id>hedgecode.website</id>
58             <name>Hedgecode Libs Website</name>
59             <url>dav:https://hedgecode.org/libs/${project.artifactId}/</url>
60         </site>
61     </distributionManagement>
62
63     <properties>
64         <chessHogVersion>0.1-SNAPSHOT</chessHogVersion>
65         <httpCoreVersion>4.4.11</httpCoreVersion>
66         <httpClientVersion>4.5.9</httpClientVersion>
67         <commonsTextVersion>1.8</commonsTextVersion>
68         <gsonVersion>2.8.0</gsonVersion>
69         <junitVersion>4.12</junitVersion>
70         <commonsConfigVersion>1.10</commonsConfigVersion>
71         <commonsCollectionVersion>3.2.1</commonsCollectionVersion>
72         <mavenDependencyPluginVersion>2.8</mavenDependencyPluginVersion>
73         <mavenAssemblyPluginVersion>2.4.1</mavenAssemblyPluginVersion>
74         <issueComponentId>10030</issueComponentId>
75         <issueNumber>13</issueNumber>
76     </properties>
77
78     <dependencies>
79         <dependency>
80             <groupId>org.apache.httpcomponents</groupId>
81             <artifactId>httpcore</artifactId>
82             <version>${httpCoreVersion}</version>
83         </dependency>
84         <dependency>
85             <groupId>org.apache.httpcomponents</groupId>
86             <artifactId>httpclient</artifactId>
87             <version>${httpClientVersion}</version>
88         </dependency>
89         <dependency>
90             <groupId>org.apache.commons</groupId>
91             <artifactId>commons-text</artifactId>
92             <version>${commonsTextVersion}</version>
93         </dependency>
94         <dependency>
95             <groupId>com.google.code.gson</groupId>
96             <artifactId>gson</artifactId>
97             <version>${gsonVersion}</version>
98         </dependency>
99         <dependency>
100             <groupId>junit</groupId>
101             <artifactId>junit</artifactId>
102             <version>${junitVersion}</version>
103             <scope>test</scope>
104         </dependency>
105         <dependency>
106             <groupId>commons-configuration</groupId>
107             <artifactId>commons-configuration</artifactId>
108             <version>${commonsConfigVersion}</version>
109             <scope>test</scope>
110         </dependency>
111         <dependency>
112             <groupId>commons-collections</groupId>
113             <artifactId>commons-collections</artifactId>
114             <version>${commonsCollectionVersion}</version>
115             <scope>test</scope>
116         </dependency>
117     </dependencies>
118
119     <build>
120         <plugins>
121             <plugin>
122                 <groupId>org.apache.maven.plugins</groupId>
123                 <artifactId>maven-dependency-plugin</artifactId>
124                 <version>${mavenDependencyPluginVersion}</version>
125                 <executions>
126                     <execution>
127                         <id>copy-dependencies</id>
128                         <phase>prepare-package</phase>
129                         <goals>
130                             <goal>copy-dependencies</goal>
131                         </goals>
132                         <configuration>
133                             <outputDirectory>${project.build.directory}/lib</outputDirectory>
134                             <overWriteReleases>false</overWriteReleases>
135                             <overWriteSnapshots>false</overWriteSnapshots>
136                             <overWriteIfNewer>true</overWriteIfNewer>
137                         </configuration>
138                     </execution>
139                 </executions>
140             </plugin>
141             <plugin>
142                 <groupId>org.apache.maven.plugins</groupId>
143                 <artifactId>maven-jar-plugin</artifactId>
144                 <version>${mavenJarPluginVersion}</version>
145                 <configuration>
146                     <archive>
147                         <manifest>
148                             <addClasspath>true</addClasspath>
149                             <classpathPrefix>lib/</classpathPrefix>
150                             <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
151                             <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
152                             <mainClass>org.hedgecode.chess.scanner.ChessHogScannerApp</mainClass>
153                         </manifest>
154                         <manifestEntries>
155                             <Implementation-Title>${project.artifactId}</Implementation-Title>
156                         </manifestEntries>
157                     </archive>
158                 </configuration>
159             </plugin>
160             <plugin>
161                 <groupId>org.apache.maven.plugins</groupId>
162                 <artifactId>maven-release-plugin</artifactId>
163                 <version>${mavenReleasePluginVersion}</version>
164                 <configuration>
165                     <tagBase>https://svn.hedgecode.org/lib/${project.artifactId}/tags</tagBase>
166                     <branchBase>https://svn.hedgecode.org/lib/${project.artifactId}/branches</branchBase>
167                     <preparationGoals>clean install</preparationGoals>
168                     <goals>deploy</goals>
169                     <releaseProfiles>release</releaseProfiles>
170                     <scmCommentPrefix xml:space="preserve">[${issueKey}-${issueNumber}] </scmCommentPrefix>
171                 </configuration>
172             </plugin>
173         </plugins>
174     </build>
175
176     <reporting>
177         <plugins>
178             <plugin>
179                 <groupId>org.apache.maven.plugins</groupId>
180                 <artifactId>maven-project-info-reports-plugin</artifactId>
181                 <version>${mavenReportsPluginVersion}</version>
182                 <configuration>
183                     <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
184                 </configuration>
185                 <reportSets>
186                     <reportSet>
187                         <reports>
188                             <report>index</report>
189                             <report>summary</report>
190                             <report>dependency-info</report>
191                             <report>project-team</report>
192                             <report>scm</report>
193                             <report>dependency-management</report>
194                             <report>dependencies</report>
195                             <report>plugin-management</report>
196                             <report>plugins</report>
197                             <report>distribution-management</report>
198                         </reports>
199                     </reportSet>
200                 </reportSets>
201             </plugin>
202         </plugins>
203     </reporting>
204
205     <profiles>
206         <profile>
207             <id>jar-with-dependencies</id>
208             <build>
209                 <plugins>
210                     <plugin>
211                         <groupId>org.apache.maven.plugins</groupId>
212                         <artifactId>maven-assembly-plugin</artifactId>
213                         <version>${mavenAssemblyPluginVersion}</version>
214                         <configuration>
215                             <archive>
216                                 <manifest>
217                                     <addClasspath>true</addClasspath>
218                                     <classpathPrefix>lib/</classpathPrefix>
219                                     <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
220                                     <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
221                                     <mainClass>org.hedgecode.chess.scanner.ChessHogScannerApp</mainClass>
222                                 </manifest>
223                                 <manifestEntries>
224                                     <Implementation-Title>${project.artifactId}</Implementation-Title>
225                                 </manifestEntries>
226                             </archive>
227                             <descriptorRefs>
228                                 <descriptorRef>jar-with-dependencies</descriptorRef>
229                             </descriptorRefs>
230                         </configuration>
231                         <executions>
232                             <execution>
233                                 <id>make-assembly</id>
234                                 <phase>package</phase>
235                                 <goals>
236                                     <goal>single</goal>
237                                 </goals>
238                             </execution>
239                         </executions>
240                     </plugin>
241                 </plugins>
242             </build>
243         </profile>
244         <profile>
245             <id>reporting</id>
246             <reporting>
247                 <plugins>
248                     <plugin>
249                         <groupId>org.apache.maven.plugins</groupId>
250                         <artifactId>maven-javadoc-plugin</artifactId>
251                         <configuration>
252                             <sourceFileExcludes>
253                                 <!--<exclude>org/hedgecode/chess/scanner/*.java</exclude>-->
254                             </sourceFileExcludes>
255                         </configuration>
256                     </plugin>
257                 </plugins>
258             </reporting>
259         </profile>
260     </profiles>
261
262 </project>