Add build configuration for generating and aggregating site
[smart-dao.git] / pom.xml
blobe1cc904bbe371dff67f120817db696eb2edb3a14
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  *   
4  * This is a common dao with basic CRUD operations and is not limited to any 
5  * persistent layer implementation
6  * 
7  * Copyright (C) 2008  Imran M Yousuf (imyousuf@smartitengineering.com)
8  * 
9  * This library is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU Lesser General Public
11  * License as published by the Free Software Foundation; either
12  * version 3 of the License, or (at your option) any later version.
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16  * Lesser General Public License for more details.
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this library; if not, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
20 -->
21 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
22   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
23     <modelVersion>4.0.0</modelVersion>
24     <groupId>com.smartitengineering</groupId>
25     <artifactId>smart-dao</artifactId>
26     <packaging>pom</packaging>
27     <version>0.4-SNAPSHOT</version>
28     <name>smart-dao</name>
29     <inceptionYear>2007</inceptionYear>
30     <description>
31         This project basically aims to create an abstraction layer above common
32         ORM used this days and provide a simplified DAO layer which is not only
33         independent of the ORM tool being used but also integrated with other
34         services, for example App Layer Caching, Free Text Search Engine etc.
35         Initial target is to implement it for Hibernate and when JPA provides
36         Hibernate's Criteria like API implement for JPA as well. Integrate
37         App Layer Cache and Compass Framework.
38     </description>
39     <url>http://code.google.com/p/smart-dao</url>
40     <organization>
41         <name>Smart IT Engineering</name>
42         <url>http://www.smartitengineering.com</url>
43     </organization>
44     <issueManagement>
45         <system>Google Code Issue Tracker</system>
46         <url>http://code.google.com/p/smart-dao/issues/</url>
47     </issueManagement>
48     <mailingLists>
49         <mailingList>
50             <name>User List</name>
51             <archive>http://groups.google.com/group/smart-dao-users</archive>
52             <post>smart-dao-users@googlegroups.com</post>
53         </mailingList>
54         <mailingList>
55             <name>Developer List</name>
56             <archive>http://groups.google.com/group/smart-dao-dev</archive>
57             <post>smart-dao-dev@googlegroups.com</post>
58         </mailingList>
59     </mailingLists>
60     <licenses>
61         <license>
62             <name>LGPL v3</name>
63             <distribution>repo and manual</distribution>
64             <url>http://www.gnu.org/licenses/lgpl.html</url>
65         </license>
66     </licenses>
67     <developers>
68         <developer>
69             <id>imyousuf</id>
70             <name>Imran M Yousuf</name>
71             <email>imyousuf@smartitengineering.com</email>
72             <organization>Smart IT Engineering</organization>
73             <timezone>GMT +0600</timezone>
74             <roles>
75                 <role>Project Owner</role>
76                 <role>Developer</role>
77                 <role>Maintainer</role>
78             </roles>
79         </developer>
80     </developers>
81     <scm>
82         <connection>scm:git:git://repo.or.cz/smart-dao.git</connection>
83         <developerConnection>scm:git:ssh://imyousuf@repo.or.cz/srv/git/smart-dao.git</developerConnection>
84     </scm>
85     <distributionManagement>
86         <!-- use the following if you're not using a snapshot version. -->
87         <repository>
88             <id>java.net-m2-repository</id>
89             <url>java-net:/maven2-repository/trunk/repository/</url>
90         </repository>
91         <!-- use the following if you ARE using a snapshot version. -->
92         <snapshotRepository>
93             <id>free-ftp-snapshot-repo</id>
94             <name>My FTP snapshot</name>
95             <url>ftp://imyousuf.100webspace.net/imyousuf.100webspace.net/maven-repo/snapshot</url>
96         </snapshotRepository>
97     </distributionManagement>
98     <repositories>
99         <repository>
100             <id>maven2-repository.dev.java.net</id>
101             <name>Java.net Repository for Maven</name>
102             <url>http://download.java.net/maven/2/</url>
103             <layout>default</layout>
104         </repository>
105         <repository>
106             <id>compass-project.org</id>
107             <name>Compass</name>
108             <url>http://repo.compass-project.org</url>
109         </repository>
110     </repositories>
111     <dependencies>
112         <dependency>
113             <groupId>junit</groupId>
114             <artifactId>junit</artifactId>
115             <version>${junit.version}</version>
116             <scope>test</scope>
117         </dependency>
118     </dependencies>
119     <build>
120         <plugins>
121             <plugin>
122                 <groupId>org.apache.maven.plugins</groupId>
123                 <artifactId>maven-release-plugin</artifactId>
124                 <version>${release.version}</version>
125             </plugin>
126             <plugin>
127                 <groupId>org.apache.maven.plugins</groupId>
128                 <artifactId>maven-scm-plugin</artifactId>
129                 <version>${scm.version}</version>
130             </plugin>
131             <plugin>
132                 <groupId>org.apache.maven.plugins</groupId>
133                 <artifactId>maven-javadoc-plugin</artifactId>
134                 <version>${javadoc.version}</version>
135                 <inherited>true</inherited>
136                 <configuration>
137                     <aggregate>true</aggregate>
138                     <linksource>true</linksource>
139                     <attach>true</attach>
140                 </configuration>
141                 <executions>
142                     <execution>
143                         <id>gen-javadoc</id>
144                         <phase>package</phase>
145                         <goals>
146                             <goal>jar</goal>
147                         </goals>
148                     </execution>
149                 </executions>
150             </plugin>
151             <plugin>
152                 <artifactId>maven-compiler-plugin</artifactId>
153                 <version>${compiler.version}</version>
154                 <inherited>true</inherited>
155                 <configuration>
156                     <source>${javac.src.version}</source>
157                     <target>${javac.target.version}</target>
158                 </configuration>
159             </plugin>
160             <plugin>
161                 <groupId>org.apache.maven.plugins</groupId>
162                 <artifactId>maven-source-plugin</artifactId>
163                 <version>${src.version}</version>
164                 <inherited>true</inherited>
165                 <configuration>
166                     <attach>true</attach>
167                 </configuration>
168                 <executions>
169                     <execution>
170                         <id>attach-sources</id>
171                         <phase>verify</phase>
172                         <goals>
173                             <goal>jar</goal>
174                         </goals>
175                     </execution>
176                 </executions>
177             </plugin>
178             <plugin>
179                 <groupId>org.apache.maven.plugins</groupId>
180                 <artifactId>maven-changelog-plugin</artifactId>
181                 <version>${changelog.version}</version>
182                 <inherited>false</inherited>
183                 <dependencies>
184                     <dependency>
185                         <groupId>org.codehaus.plexus</groupId>
186                         <artifactId>plexus-utils</artifactId>
187                         <version>${plexus-utils.version}</version>
188                     </dependency>
189                     <dependency>
190                         <groupId>org.apache.maven.scm</groupId>
191                         <artifactId>maven-scm-provider-gitexe</artifactId>
192                         <version>${scm.version}</version>
193                     </dependency>
194                 </dependencies>
195                 <configuration>
196                     <outputXML>./target/change/changes.xml</outputXML>
197                 </configuration>
198                 <executions>
199                     <execution>
200                         <id>attach-changelog</id>
201                         <phase>generate-sources</phase>
202                         <inherited>false</inherited>
203                         <goals>
204                             <goal>changelog</goal>
205                         </goals>
206                     </execution>
207                 </executions>
208             </plugin>
209             <plugin>
210                 <groupId>org.codehaus.mojo</groupId>
211                 <artifactId>xml-maven-plugin</artifactId>
212                 <version>${xml-plugin.version}</version>
213                 <inherited>false</inherited>
214                 <executions>
215                     <execution>
216                         <id>generate-changes</id>
217                         <phase>generate-resources</phase>
218                         <inherited>false</inherited>
219                         <goals>
220                             <goal>transform</goal>
221                         </goals>
222                     </execution>
223                 </executions>
224                 <configuration>
225                     <transformationSets>
226                         <transformationSet>
227                             <dir>./target/change</dir>
228                             <stylesheet>src/main/xsl/changes.xsl</stylesheet>
229                         </transformationSet>
230                     </transformationSets>
231                 </configuration>
232             </plugin>
233             <plugin>
234                 <groupId>org.apache.maven.plugins</groupId>
235                 <artifactId>maven-antrun-plugin</artifactId>
236                 <version>${antrun.version}</version>
237                 <inherited>false</inherited>
238                 <executions>
239                     <execution>
240                         <id>rename-changes</id>
241                         <phase>generate-resources</phase>
242                         <inherited>false</inherited>
243                         <goals>
244                             <goal>run</goal>
245                         </goals>
246                         <configuration>
247                             <tasks>
248                                 <move file="target/generated-resources/xml/xslt/changes.xml" tofile="target/generated-resources/xml/xslt/changes-${version}.html" verbose="true"/>
249                             </tasks>
250                         </configuration>
251                     </execution>
252                 </executions>
253             </plugin>
254         </plugins>
255         <extensions>
256             <extension>
257                 <groupId>org.jvnet.wagon-svn</groupId>
258                 <artifactId>wagon-svn</artifactId>
259                 <version>${wagon-svn.version}</version>
260             </extension>
261             <extension>
262                 <groupId>org.apache.maven.wagon</groupId>
263                 <artifactId>wagon-ftp</artifactId>
264                 <version>${wagon-ftp.version}</version>
265             </extension>
266         </extensions>
267     </build>
268     <reporting>
269         <plugins>
270             <plugin>
271                 <groupId>org.apache.maven.plugins</groupId>
272                 <artifactId>maven-site-plugin</artifactId>
273                 <version>${site.version}</version>
274                 <inherited>true</inherited>
275             </plugin>
276             <plugin>
277                 <groupId>org.apache.maven.plugins</groupId>
278                 <artifactId>maven-javadoc-plugin</artifactId>
279                 <version>${javadoc.version}</version>
280                 <configuration>
281                     <aggregate>false</aggregate>
282                     <linksource>true</linksource>
283                 </configuration>
284             </plugin>
285             <plugin>
286                 <groupId>org.codehaus.mojo</groupId>
287                 <artifactId>cobertura-maven-plugin</artifactId>
288                 <version>${cobertura.version}</version>
289             </plugin>
290             <plugin>
291                 <groupId>org.apache.maven.plugins</groupId>
292                 <artifactId>maven-changelog-plugin</artifactId>
293                 <version>${changelog.version}</version>
294                 <configuration>
295                     <type>tag</type>
296                     <tags>
297                         <tag implementation="java.lang.String">${last.release.tag}
298                         </tag>
299                         <tag implementation="java.lang.String">HEAD
300                         </tag>
301                     </tags>
302                 </configuration>
303             </plugin>
304         </plugins>
305     </reporting>
306     <profiles>
307         <profile>
308             <id>build-ext</id>
309             <activation>
310                 <property>
311                     <name>build.complete</name>
312                     <value>true</value>
313                 </property>
314             </activation>
315             <build>
316                 <plugins>
317                     <plugin>
318                         <groupId>org.apache.maven.plugins</groupId>
319                         <artifactId>maven-site-plugin</artifactId>
320                         <version>${site.version}</version>
321                         <inherited>true</inherited>
322                         <executions>
323                             <execution>
324                                 <id>site-gen</id>
325                                 <phase>prepare-package</phase>
326                                 <inherited>true</inherited>
327                                 <goals>
328                                     <goal>site</goal>
329                                 </goals>
330                             </execution>
331                         </executions>
332                     </plugin>
333                 </plugins>
334             </build>
335             <modules>
336                 <module>docs</module>
337             </modules>
338         </profile>
339     </profiles>
340     <modules>
341         <module>smart-hibernate-abstract-dao</module>
342         <module>smart-abstract-dao</module>
343         <module>smart-domain</module>
344         <module>smart-cache</module>
345         <module>smart-dao-search</module>
346         <module>smart-version</module>
347         <module>smart-dao-queryparam</module>
348         <module>smart-rs</module>
349     </modules>
350     <properties>
351         <commons-lang.version>2.3</commons-lang.version>
352         <smart-util.version>0.2-SNAPSHOT</smart-util.version>
353         <jgit.version>0.4-SNAPSHOT</jgit.version>
354         <scm.version>1.3-SNAPSHOT</scm.version>
355         <jersey.version>1.0.3-SNAPSHOT</jersey.version>
356         <changelog.version>2.2-SNAPSHOT</changelog.version>
357         <plexus-utils.version>1.5.6</plexus-utils.version>
358         <asm.version>3.1</asm.version>
359         <last.release.tag>0.3</last.release.tag>
360         <antrun.version>1.2</antrun.version>
361         <junit.version>3.8.1</junit.version>
362         <wagon-svn.version>1.8</wagon-svn.version>
363         <wagon-ftp.version>1.0-alpha-6</wagon-ftp.version>
364         <xml-plugin.version>1.0-beta-2</xml-plugin.version>
365         <src.version>2.0.4</src.version>
366         <compiler.version>2.0.2</compiler.version>
367         <javadoc.version>2.5</javadoc.version>
368         <release.version>2.0-beta-8</release.version>
369         <javac.src.version>1.5</javac.src.version>
370         <javac.target.version>1.5</javac.target.version>
371         <jaxrs.version>1.0</jaxrs.version>
372         <cobertura.version>2.2</cobertura.version>
373         <site.version>2.0-beta-7</site.version>
374         <assembly.version>2.2-beta-2</assembly.version>
375         <jar.version>2.2</jar.version>
376         <jmock.version>2.1.0</jmock.version>
377         <ehcache.version>1.5.0</ehcache.version>
378         <compass.version>2.1.0</compass.version>
379         <spring.version>2.5.4</spring.version>
380         <hibernate.version>3.2.5.ga</hibernate.version>
381         <c3p0.version>0.9.1.2</c3p0.version>
382         <derby.version>10.4.2.0</derby.version>
383         <cglib.version>2.1_3</cglib.version>
384     </properties>
385 </project>