aedbb9f6eca23220eca741ced0e5744562bccbf2
[hespiff.git] / pom.xml
1 <?xml version='1.0' encoding='UTF-8'?>
2
3 <!--
4   ~ Copyright (c) 2015-2019. 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" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
20          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
21     <modelVersion>4.0.0</modelVersion>
22
23     <parent>
24         <groupId>org.hedgecode.maven</groupId>
25         <artifactId>lib-parent</artifactId>
26         <version>2</version>
27         <relativePath>../lib-parent/pom.xml</relativePath>
28     </parent>
29
30     <groupId>org.hedgecode.xml</groupId>
31     <artifactId>hespiff</artifactId>
32     <version>0.1-SNAPSHOT</version>
33     <packaging>jar</packaging>
34
35     <name>Hedgecode XSPF API</name>
36     <description>
37         Hedgecode XSPF API.
38     </description>
39     <inceptionYear>2015</inceptionYear>
40
41     <url>http://lib.hedgecode.org/${project.artifactId}/</url>
42
43     <scm>
44         <connection>scm:svn:http://svn.hedgecode.org/xml/${project.artifactId}/trunk/</connection>
45         <developerConnection>scm:svn:https://svn.hedgecode.org/xml/${project.artifactId}/trunk/</developerConnection>
46         <url>http://svn.hedgecode.org/xml/${project.artifactId}/trunk/</url>
47     </scm>
48
49     <issueManagement>
50         <system>JIRA</system>
51         <url>http://issues.hedgecode.org/browse/${issueKey}/component/${issueComponentId}</url>
52     </issueManagement>
53
54     <distributionManagement>
55         <site>
56             <id>hedgecode.website</id>
57             <name>Hedgecode Libs Website</name>
58             <url>dav:https://hedgecode.org/libs/${project.artifactId}/</url>
59         </site>
60     </distributionManagement>
61
62     <properties>
63         <javaVersion>7</javaVersion>
64         <maven.compiler.source>1.${javaVersion}</maven.compiler.source>
65         <maven.compiler.target>1.${javaVersion}</maven.compiler.target>
66
67         <junitVersion>4.8.2</junitVersion>
68         <mavenDependencyPluginVersion>2.8</mavenDependencyPluginVersion>
69         <mavenAssemblyPluginVersion>2.4.1</mavenAssemblyPluginVersion>
70         <mavenResourcesPluginVersion>2.7</mavenResourcesPluginVersion>
71         <relaxngMavenPluginVersion>1.1</relaxngMavenPluginVersion>
72         <jaxb2MavenPluginVersion>2.2</jaxb2MavenPluginVersion>
73         <mavenJaxb2PluginVersion>0.13.1</mavenJaxb2PluginVersion>
74         <buildHelperMavenPluginVersoin>1.9.1</buildHelperMavenPluginVersoin>
75         <issueComponentId>10020</issueComponentId>
76         <issueNumber>4</issueNumber>
77
78         <project.package>${project.groupId}.xspf</project.package>
79         <xsd.directory>${project.basedir}/src/main/xsd</xsd.directory>
80         <xsd.filename>xspf-1_0.2</xsd.filename>
81         <relaxng.directory>${project.basedir}/src/main/rng</relaxng.directory>
82         <relaxng.filename>xspf-1_0.7</relaxng.filename>
83         <generated.xsd.directory>${project.build.directory}/generated-xsd</generated.xsd.directory>
84         <generated.sources.directory>${project.build.directory}/generated-sources</generated.sources.directory>
85         <generated.meta.directory>${project.build.outputDirectory}/META-INF</generated.meta.directory>
86     </properties>
87
88     <dependencies>
89         <dependency>
90             <groupId>junit</groupId>
91             <artifactId>junit</artifactId>
92             <version>${junitVersion}</version>
93             <scope>test</scope>
94         </dependency>
95     </dependencies>
96
97     <build>
98         <plugins>
99             <!--plugin>
100               <groupId>org.apache.maven.plugins</groupId>
101               <artifactId>maven-resources-plugin</artifactId>
102               <version>${mavenResourcesPluginVersion}</version>
103               <executions>
104                   <execution>
105                       <id>copy-xsd</id>
106                       <phase>validate</phase>
107                       <goals>
108                           <goal>copy-resources</goal>
109                       </goals>
110                       <configuration>
111                           <outputDirectory>${generated.xsd.directory}</outputDirectory>
112                           <resources>          
113                               <resource>
114                                   <directory>${xsd.directory}</directory>
115                               </resource>
116                           </resources>              
117                       </configuration>            
118                   </execution>
119               </executions>
120             </plugin-->
121             <plugin>
122                 <groupId>org.apache.maven.plugins</groupId>
123                 <artifactId>maven-resources-plugin</artifactId>
124                 <version>${mavenResourcesPluginVersion}</version>
125                 <executions>
126                     <execution>
127                         <id>copy-xsd</id>
128                         <phase>validate</phase>
129                         <goals>
130                             <goal>copy-resources</goal>
131                         </goals>
132                         <configuration>
133                             <outputDirectory>${generated.meta.directory}</outputDirectory>
134                             <resources>
135                                 <resource>
136                                     <directory>${xsd.directory}</directory>
137                                 </resource>
138                                 <resource>
139                                     <directory>${relaxng.directory}</directory>
140                                 </resource>
141                             </resources>
142                         </configuration>
143                     </execution>
144                 </executions>
145             </plugin>
146             <plugin>
147                 <groupId>us.bryon</groupId>
148                 <artifactId>relaxng-maven-plugin</artifactId>
149                 <version>${relaxngMavenPluginVersion}</version>
150                 <executions>
151                     <execution>
152                         <phase>generate-sources</phase>
153                         <goals>
154                             <goal>trang</goal>
155                         </goals>
156                         <configuration>
157                             <translations>
158                                 <translation>
159                                     <in>${relaxng.directory}/${relaxng.filename}.rng</in>
160                                     <out>${generated.xsd.directory}/${relaxng.filename}.xsd</out>
161                                 </translation>
162                             </translations>
163                         </configuration>
164                     </execution>
165                 </executions>
166             </plugin>
167             <plugin>
168                 <groupId>org.codehaus.mojo</groupId>
169                 <artifactId>jaxb2-maven-plugin</artifactId>
170                 <version>${jaxb2MavenPluginVersion}</version>
171                 <executions>
172                     <execution>
173                         <phase>generate-sources</phase>
174                         <goals>
175                             <goal>xjc</goal>
176                         </goals>
177                         <configuration>
178                             <outputDirectory>${generated.sources.directory}/xsd</outputDirectory>
179                             <packageName>${project.package}.xsd</packageName>
180                             <arguments>
181                                 <argument>-episode</argument>
182                                 <argument>${generated.meta.directory}/xsd-jaxb.episode</argument>
183                             </arguments>
184                         </configuration>
185                     </execution>
186                 </executions>
187             </plugin>
188             <plugin>
189                 <groupId>org.jvnet.jaxb2.maven2</groupId>
190                 <artifactId>maven-jaxb2-plugin</artifactId>
191                 <version>${mavenJaxb2PluginVersion}</version>
192                 <executions>
193                     <execution>
194                         <phase>generate-sources</phase>
195                         <goals>
196                             <goal>generate</goal>
197                         </goals>
198                         <configuration>
199                             <schemaDirectory>${generated.xsd.directory}</schemaDirectory>
200                             <generateDirectory>${generated.sources.directory}/rng</generateDirectory>
201                             <generatePackage>${project.package}.rng</generatePackage>
202                             <episodeFile>${generated.meta.directory}/rng-jaxb.episode</episodeFile>
203                         </configuration>
204                     </execution>
205                 </executions>
206             </plugin>
207             <plugin>
208                 <groupId>org.codehaus.mojo</groupId>
209                 <artifactId>build-helper-maven-plugin</artifactId>
210                 <version>${buildHelperMavenPluginVersoin}</version>
211                 <executions>
212                     <execution>
213                         <phase>generate-sources</phase>
214                         <goals>
215                             <goal>add-source</goal>
216                         </goals>
217                         <configuration>
218                             <sources>
219                                 <source>${generated.sources.directory}/xsd</source>
220                                 <source>${generated.sources.directory}/rng</source>
221                             </sources>
222                         </configuration>
223                     </execution>
224                 </executions>
225             </plugin>
226             <plugin>
227                 <groupId>org.apache.maven.plugins</groupId>
228                 <artifactId>maven-jar-plugin</artifactId>
229                 <version>${mavenJarPluginVersion}</version>
230                 <configuration>
231                     <archive>
232                         <manifest>
233                             <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
234                             <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
235                             <mainClass>org.hedgecode.xml.xspf.XSPFApp</mainClass>
236                         </manifest>
237                         <manifestEntries>
238                             <Implementation-Title>${project.artifactId}</Implementation-Title>
239                         </manifestEntries>
240                     </archive>
241                 </configuration>
242             </plugin>
243             <plugin>
244                 <groupId>org.apache.maven.plugins</groupId>
245                 <artifactId>maven-release-plugin</artifactId>
246                 <version>${mavenReleasePluginVersion}</version>
247                 <configuration>
248                     <tagBase>https://svn.hedgecode.org/xml/${project.artifactId}/tags</tagBase>
249                     <branchBase>https://svn.hedgecode.org/xml/${project.artifactId}/branches</branchBase>
250                     <preparationGoals>clean install</preparationGoals>
251                     <goals>deploy</goals>
252                     <releaseProfiles>release</releaseProfiles> <!-- todo: hedgecode-release -->
253                     <scmCommentPrefix xml:space="preserve">[${issueKey}-${issueNumber}] </scmCommentPrefix>
254                 </configuration>
255             </plugin>
256         </plugins>
257     </build>
258
259     <reporting>
260         <plugins>
261             <plugin>
262                 <groupId>org.apache.maven.plugins</groupId>
263                 <artifactId>maven-project-info-reports-plugin</artifactId>
264                 <version>${mavenReportsPluginVersion}</version>
265                 <configuration>
266                     <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
267                 </configuration>
268                 <reportSets>
269                     <reportSet>
270                         <reports>
271                             <report>index</report>
272                             <report>summary</report>
273                             <report>dependency-info</report>
274                             <report>project-team</report>
275                             <report>scm</report>
276                             <report>dependency-management</report>
277                             <report>dependencies</report>
278                             <report>plugin-management</report>
279                             <report>plugins</report>
280                             <report>distribution-management</report>
281                         </reports>
282                     </reportSet>
283                 </reportSets>
284             </plugin>
285         </plugins>
286     </reporting>
287
288 </project>