xref: /OpenGrok/opengrok-indexer/pom.xml (revision 0170aac5aa72febb6e1927ea7efe15040ff6bec3)
108a0c20eSJorgen Austvik<?xml version="1.0" encoding="UTF-8"?>
218446c8aSKnut Anders Hatlen<!--
318446c8aSKnut Anders Hatlen
418446c8aSKnut Anders HatlenCDDL HEADER START
518446c8aSKnut Anders Hatlen
618446c8aSKnut Anders HatlenThe contents of this file are subject to the terms of the
718446c8aSKnut Anders HatlenCommon Development and Distribution License (the "License").
818446c8aSKnut Anders HatlenYou may not use this file except in compliance with the License.
918446c8aSKnut Anders Hatlen
1018446c8aSKnut Anders HatlenSee LICENSE.txt included in this distribution for the specific
1118446c8aSKnut Anders Hatlenlanguage governing permissions and limitations under the License.
1218446c8aSKnut Anders Hatlen
1318446c8aSKnut Anders HatlenWhen distributing Covered Code, include this CDDL HEADER in each
1418446c8aSKnut Anders Hatlenfile and include the License file at LICENSE.txt.
1518446c8aSKnut Anders HatlenIf applicable, add the following below this CDDL HEADER, with the
1618446c8aSKnut Anders Hatlenfields enclosed by brackets "[]" replaced with your own identifying
1718446c8aSKnut Anders Hatleninformation: Portions Copyright [yyyy] [name of copyright owner]
1818446c8aSKnut Anders Hatlen
1918446c8aSKnut Anders HatlenCDDL HEADER END
2018446c8aSKnut Anders Hatlen
21b40c46f4SLubos KoscoCopyright (c) 2010, 2017, Oracle and/or its affiliates. All rights reserved.
22ef48b424SChris FrairePortions Copyright (c) 2017, Chris Fraire <cfraire@me.com>.
2318446c8aSKnut Anders Hatlen
2418446c8aSKnut Anders Hatlen-->
25*0170aac5SAdam Hornáček<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/maven-v4_0_0.xsd">
2608a0c20eSJorgen Austvik    <modelVersion>4.0.0</modelVersion>
2708a0c20eSJorgen Austvik
2808a0c20eSJorgen Austvik    <parent>
2908a0c20eSJorgen Austvik        <groupId>org.opensolaris.opengrok</groupId>
3008a0c20eSJorgen Austvik        <artifactId>opengrok</artifactId>
31ace62994SVladimir Kotal        <version>1.1-SNAPSHOT</version>
3208a0c20eSJorgen Austvik    </parent>
3308a0c20eSJorgen Austvik
34*0170aac5SAdam Hornáček    <artifactId>opengrok-indexer</artifactId>
35*0170aac5SAdam Hornáček    <version>1.1-SNAPSHOT</version>
36*0170aac5SAdam Hornáček    <packaging>jar</packaging>
37*0170aac5SAdam Hornáček
38*0170aac5SAdam Hornáček    <name>OpenGrok Indexer</name>
39*0170aac5SAdam Hornáček
40*0170aac5SAdam Hornáček    <dependencies>
41*0170aac5SAdam Hornáček        <dependency>
42*0170aac5SAdam Hornáček            <groupId>org.apache.bcel</groupId>
43*0170aac5SAdam Hornáček            <artifactId>bcel</artifactId>
44*0170aac5SAdam Hornáček        </dependency>
45*0170aac5SAdam Hornáček        <dependency>
46*0170aac5SAdam Hornáček            <groupId>org.apache.lucene</groupId>
47*0170aac5SAdam Hornáček            <artifactId>lucene-core</artifactId>
48*0170aac5SAdam Hornáček        </dependency>
49*0170aac5SAdam Hornáček        <dependency>
50*0170aac5SAdam Hornáček            <groupId>org.apache.lucene</groupId>
51*0170aac5SAdam Hornáček            <artifactId>lucene-analyzers-common</artifactId>
52*0170aac5SAdam Hornáček        </dependency>
53*0170aac5SAdam Hornáček        <dependency>
54*0170aac5SAdam Hornáček            <groupId>org.apache.lucene</groupId>
55*0170aac5SAdam Hornáček            <artifactId>lucene-queryparser</artifactId>
56*0170aac5SAdam Hornáček        </dependency>
57*0170aac5SAdam Hornáček        <dependency>
58*0170aac5SAdam Hornáček            <groupId>org.apache.lucene</groupId>
59*0170aac5SAdam Hornáček            <artifactId>lucene-suggest</artifactId>
60*0170aac5SAdam Hornáček        </dependency>
61*0170aac5SAdam Hornáček        <dependency>
62*0170aac5SAdam Hornáček            <groupId>javax.servlet</groupId>
63*0170aac5SAdam Hornáček            <artifactId>servlet-api</artifactId>
64*0170aac5SAdam Hornáček        </dependency>
65*0170aac5SAdam Hornáček        <dependency>
66*0170aac5SAdam Hornáček            <groupId>com.googlecode.json-simple</groupId>
67*0170aac5SAdam Hornáček            <artifactId>json-simple</artifactId>
68*0170aac5SAdam Hornáček        </dependency>
69*0170aac5SAdam Hornáček        <dependency>
70*0170aac5SAdam Hornáček            <groupId>org.opensolaris.opengrok</groupId>
71*0170aac5SAdam Hornáček            <artifactId>jrcs</artifactId>
72*0170aac5SAdam Hornáček            <version>${project.version}</version>
73*0170aac5SAdam Hornáček        </dependency>
74*0170aac5SAdam Hornáček        <dependency>
75*0170aac5SAdam Hornáček            <groupId>org.apache.ant</groupId>
76*0170aac5SAdam Hornáček            <artifactId>ant</artifactId>
77*0170aac5SAdam Hornáček        </dependency>
78*0170aac5SAdam Hornáček        <dependency>
79*0170aac5SAdam Hornáček            <groupId>junit</groupId>
80*0170aac5SAdam Hornáček            <artifactId>junit</artifactId>
81*0170aac5SAdam Hornáček            <scope>test</scope>
82*0170aac5SAdam Hornáček        </dependency>
83*0170aac5SAdam Hornáček
84*0170aac5SAdam Hornáček    </dependencies>
85*0170aac5SAdam Hornáček
8608a0c20eSJorgen Austvik    <build>
87aa4907e2SLubos Kosco
8808a0c20eSJorgen Austvik        <plugins>
89e0f7ec00SKnut Anders Hatlen            <plugin>
900d40e9d0SAdam Hornáček                <artifactId>maven-assembly-plugin</artifactId>
91e0f7ec00SKnut Anders Hatlen                <configuration>
92e0f7ec00SKnut Anders Hatlen                    <archive>
93e0f7ec00SKnut Anders Hatlen                        <manifest>
94e0f7ec00SKnut Anders Hatlen                            <mainClass>org.opensolaris.opengrok.index.Indexer</mainClass>
95e0f7ec00SKnut Anders Hatlen                        </manifest>
96e0f7ec00SKnut Anders Hatlen                    </archive>
970d40e9d0SAdam Hornáček                    <descriptorRefs>
9892788b82SAdam Hornáček                        <descriptorRef>jar-with-dependencies</descriptorRef>
990d40e9d0SAdam Hornáček                    </descriptorRefs>
100e0f7ec00SKnut Anders Hatlen                </configuration>
1010d40e9d0SAdam Hornáček                <executions>
1020d40e9d0SAdam Hornáček                    <execution>
1030d40e9d0SAdam Hornáček                        <phase>package</phase>
1040d40e9d0SAdam Hornáček                        <goals>
1050d40e9d0SAdam Hornáček                            <goal>single</goal>
1060d40e9d0SAdam Hornáček                        </goals>
1070d40e9d0SAdam Hornáček                    </execution>
1080d40e9d0SAdam Hornáček                </executions>
109e0f7ec00SKnut Anders Hatlen            </plugin>
110e0f7ec00SKnut Anders Hatlen
11108a0c20eSJorgen Austvik            <plugin>
11208a0c20eSJorgen Austvik                <groupId>de.jflex</groupId>
11345ec3841SLubos Kosco                <artifactId>jflex-maven-plugin</artifactId>
1144e6518cbSLubos Kosco                <version>1.6.1</version>
11508a0c20eSJorgen Austvik                <executions>
11608a0c20eSJorgen Austvik                    <execution>
11708a0c20eSJorgen Austvik                        <goals>
11808a0c20eSJorgen Austvik                            <goal>generate</goal>
11908a0c20eSJorgen Austvik                        </goals>
120eeb7e5b3SAdam Hornáček                        <phase>generate-sources</phase>
12108a0c20eSJorgen Austvik                        <configuration>
12208a0c20eSJorgen Austvik                            <lexDefinitions>
12358f88ff1SChris Fraire                                <lexDefinition>${basedir}/target/jflex-sources</lexDefinition>
12408a0c20eSJorgen Austvik                            </lexDefinitions>
12545ec3841SLubos Kosco                            <inputStreamCtor>false</inputStreamCtor>
12608a0c20eSJorgen Austvik                        </configuration>
12708a0c20eSJorgen Austvik                    </execution>
12808a0c20eSJorgen Austvik                </executions>
12908a0c20eSJorgen Austvik            </plugin>
1309182cd30SLubos Kosco
131eeb7e5b3SAdam Hornáček            <!-- patches jflex generated files to stop increasing buffer beyond token size that lucene accepts
132ff70ede8SLubos Kosco            https://github.com/OpenGrok/OpenGrok/issues/1170 make parsers stop producing tokens > 32766 chars
133ba14bbd8SLubos Kosco            at least for PlainFullTokenizer, PlainSymbolTokenizer, JavaScriptSymbolTokenizer, JavaSymbolTokenizer
1349182cd30SLubos Kosco            use below
1359182cd30SLubos Kosco            -->
1369182cd30SLubos Kosco
137ff70ede8SLubos Kosco            <plugin>
138ff70ede8SLubos Kosco                <groupId>com.google.code.maven-replacer-plugin</groupId>
139ff70ede8SLubos Kosco                <artifactId>replacer</artifactId>
1409182cd30SLubos Kosco                <version>1.5.3</version>
141ff70ede8SLubos Kosco                <executions>
142ff70ede8SLubos Kosco                    <execution>
1439182cd30SLubos Kosco                        <phase>generate-sources</phase>
144ff70ede8SLubos Kosco                        <goals>
145ff70ede8SLubos Kosco                            <goal>replace</goal>
146ff70ede8SLubos Kosco                        </goals>
147ff70ede8SLubos Kosco                    </execution>
148ff70ede8SLubos Kosco                </executions>
149ff70ede8SLubos Kosco                <configuration>
1509182cd30SLubos Kosco                    <filesToInclude>
1519182cd30SLubos Kosco                        ${basedir}/target/generated-sources/jflex/org/opensolaris/opengrok/analysis/java/JavaSymbolTokenizer.java,${basedir}/target/generated-sources/jflex/org/opensolaris/opengrok/analysis/javascript/JavaScriptSymbolTokenizer.java,${basedir}/target/generated-sources/jflex/org/opensolaris/opengrok/analysis/plain/PlainFullTokenizer.java,${basedir}/target/generated-sources/jflex/org/opensolaris/opengrok/analysis/plain/PlainSymbolTokenizer.java
1529182cd30SLubos Kosco                    </filesToInclude>
1539182cd30SLubos Kosco                    <replacements>
1549182cd30SLubos Kosco                        <replacement>
1559182cd30SLubos Kosco                            <token>private static final int ZZ_BUFFERSIZE =</token>
1569182cd30SLubos Kosco                            <value>private int ZZ_BUFFERSIZE =</value>
1579182cd30SLubos Kosco                        </replacement>
1589182cd30SLubos Kosco                        <replacement>
1599182cd30SLubos Kosco                            <token>int requested = zzBuffer\.length - zzEndRead;</token>
1609182cd30SLubos Kosco                            <value>int requested = zzBuffer.length - zzEndRead - zzFinalHighSurrogate;</value>
1619182cd30SLubos Kosco                        </replacement>
1629182cd30SLubos Kosco                        <replacement>
1639182cd30SLubos Kosco                            <token>(zzFinalHighSurrogate = 1;)(\r?\n)</token>
1649182cd30SLubos Kosco                            <value>$1$2          if (numRead == 1) { return true; }$2</value>
1659182cd30SLubos Kosco                        </replacement>
1669182cd30SLubos Kosco
1679182cd30SLubos Kosco                        <replacement>
1689182cd30SLubos Kosco                            <token>[ \t]*/\* is the buffer big enough\? \*/\s+if \(zzCurrentPos >= zzBuffer\.length.*?\}[ \t]*\r?\n</token>
1699182cd30SLubos Kosco                            <value></value>
1709182cd30SLubos Kosco                        </replacement>
1719182cd30SLubos Kosco                        <!-- also revert 0 character check that got in with 1.6.1 : https://github.com/jflex-de/jflex/blob/master/jflex/examples/zero-reader/README.md -->
1729182cd30SLubos Kosco                        <replacement>
1739182cd30SLubos Kosco                            <token>[ \t]*/\* not supposed to occur according to specification of java\.io\.Reader \*/\s+if \(numRead == 0.*?\}[ \t]*\r?\n</token>
1749182cd30SLubos Kosco                            <value></value>
1759182cd30SLubos Kosco                        </replacement>
1769182cd30SLubos Kosco
1779182cd30SLubos Kosco                    </replacements>
178ff70ede8SLubos Kosco                    <regexFlags>
1799182cd30SLubos Kosco                        <regexFlag>DOTALL</regexFlag>
180ff70ede8SLubos Kosco                    </regexFlags>
181ff70ede8SLubos Kosco                </configuration>
1829182cd30SLubos Kosco            </plugin>
1832e3d7e6eSJorgen Austvik
1842e3d7e6eSJorgen Austvik            <plugin>
18545ec3841SLubos Kosco                <groupId>org.apache.maven.plugins</groupId>
1862e3d7e6eSJorgen Austvik                <artifactId>maven-antrun-plugin</artifactId>
1879f619df4SLubos Kosco                <version>1.8</version>
1882e3d7e6eSJorgen Austvik                <executions>
1892e3d7e6eSJorgen Austvik                    <execution>
19058f88ff1SChris Fraire                        <id>collect-lex-lexh</id>
19158f88ff1SChris Fraire                        <phase>initialize</phase>
19258f88ff1SChris Fraire                        <configuration>
19358f88ff1SChris Fraire                            <target>
194eeb7e5b3SAdam Hornáček                                <property name="src.dir" value="src/main/resources"/>
19558f88ff1SChris Fraire                                <property name="tgt.dir" value="${basedir}/target/jflex-sources"/>
19658f88ff1SChris Fraire                                <ant target="-collect-lex-lexh"/>
19758f88ff1SChris Fraire                            </target>
19858f88ff1SChris Fraire                        </configuration>
19958f88ff1SChris Fraire                        <goals>
20058f88ff1SChris Fraire                            <goal>run</goal>
20158f88ff1SChris Fraire                        </goals>
20258f88ff1SChris Fraire                    </execution>
20358f88ff1SChris Fraire                    <execution>
20458f88ff1SChris Fraire                        <id>update-build-info</id>
20518446c8aSKnut Anders Hatlen                        <phase>generate-resources</phase>
20618446c8aSKnut Anders Hatlen                        <configuration>
20718446c8aSKnut Anders Hatlen                            <target>
20845ec3841SLubos Kosco                                <property name="version" value="${project.version}"/>
20918446c8aSKnut Anders Hatlen                                <ant target="-update-build-info"/>
21018446c8aSKnut Anders Hatlen                            </target>
21118446c8aSKnut Anders Hatlen                        </configuration>
21218446c8aSKnut Anders Hatlen                        <goals>
21318446c8aSKnut Anders Hatlen                            <goal>run</goal>
21418446c8aSKnut Anders Hatlen                        </goals>
21518446c8aSKnut Anders Hatlen                    </execution>
21618446c8aSKnut Anders Hatlen                    <execution>
2172e3d7e6eSJorgen Austvik                        <id>build-config-files</id>
2182e3d7e6eSJorgen Austvik                        <phase>process-test-classes</phase>
2192e3d7e6eSJorgen Austvik                        <goals>
2202e3d7e6eSJorgen Austvik                            <goal>run</goal>
2212e3d7e6eSJorgen Austvik                        </goals>
2222e3d7e6eSJorgen Austvik                        <configuration>
22318446c8aSKnut Anders Hatlen                            <target unless="maven.test.skip">
22418446c8aSKnut Anders Hatlen                                <ant target="-post-compile-test"/>
22518446c8aSKnut Anders Hatlen                            </target>
2262e3d7e6eSJorgen Austvik                        </configuration>
2272e3d7e6eSJorgen Austvik                    </execution>
2282e3d7e6eSJorgen Austvik                </executions>
2292e3d7e6eSJorgen Austvik            </plugin>
2302e3d7e6eSJorgen Austvik
231aa4907e2SLubos Kosco            <plugin>
232aa4907e2SLubos Kosco                <groupId>org.apache.maven.plugins</groupId>
233aa4907e2SLubos Kosco                <artifactId>maven-surefire-plugin</artifactId>
234aa4907e2SLubos Kosco                <configuration>
235d622a041SFarid Zakaria                    <systemPropertyVariables>
236d622a041SFarid Zakaria                        <junit-force-all>true</junit-force-all>
237d622a041SFarid Zakaria                    </systemPropertyVariables>
238aa4907e2SLubos Kosco                    <excludes>
239aa4907e2SLubos Kosco                        <!-- Test helper class with name that confuses surefire -->
240aa4907e2SLubos Kosco                        <exclude>**/TestRepository.java</exclude>
241aa4907e2SLubos Kosco                    </excludes>
242aa4907e2SLubos Kosco                </configuration>
243aa4907e2SLubos Kosco            </plugin>
244aa4907e2SLubos Kosco
245bc6c8375SVladimir Kotal            <plugin>
246bc6c8375SVladimir Kotal                <groupId>org.codehaus.mojo</groupId>
247bc6c8375SVladimir Kotal                <artifactId>exec-maven-plugin</artifactId>
248bc6c8375SVladimir Kotal                <version>1.6.0</version>
249bc6c8375SVladimir Kotal                <executions>
250bc6c8375SVladimir Kotal                    <execution>
251bc6c8375SVladimir Kotal                        <phase>verify</phase>
252bc6c8375SVladimir Kotal                            <goals>
253bc6c8375SVladimir Kotal                                <goal>exec</goal>
254bc6c8375SVladimir Kotal                            </goals>
255bc6c8375SVladimir Kotal                    </execution>
256bc6c8375SVladimir Kotal                </executions>
257bc6c8375SVladimir Kotal                <configuration>
258bc6c8375SVladimir Kotal                    <executable>pep8</executable>
259bc6c8375SVladimir Kotal                    <arguments>
260bc6c8375SVladimir Kotal                        <argument>-v</argument>
261bc6c8375SVladimir Kotal                        <argument>--exclude=filelock.py,test_command.py</argument>
262bc6c8375SVladimir Kotal                        <argument>${project.basedir}/../tools/sync</argument>
263bc6c8375SVladimir Kotal                    </arguments>
264bc6c8375SVladimir Kotal                </configuration>
265bc6c8375SVladimir Kotal            </plugin>
266aa4907e2SLubos Kosco
26708a0c20eSJorgen Austvik        </plugins>
26808a0c20eSJorgen Austvik    </build>
26908a0c20eSJorgen Austvik
27008a0c20eSJorgen Austvik</project>
271