blob: 9d6b014086efd3a810b1735d3164055eaeffac59 [file] [log] [blame]
Nils Diewaldf399a672013-11-18 17:55:22 +00001<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Akrone1befe02021-07-27 13:34:51 +02002 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3 <modelVersion>4.0.0</modelVersion>
Nils Diewald97b66382014-02-11 00:32:23 +00004
Akrone1befe02021-07-27 13:34:51 +02005 <!-- ** Server
Eliza Margarethaff416632016-11-03 15:08:07 +01006
7 # Start the server with
8
9 $ mvn compile exec:java
10
11 # Or after packaging
12
13 $ mvn clean package
Nils Diewalde26f03f2014-06-04 17:48:53 +000014
Eliza Margarethaff416632016-11-03 15:08:07 +010015 # with
16
17 $ java -jar target/Krill-Server.jar
18
19 ** Formatter
20
21 # Format the code with $ mvn java-formatter:format
22
23 ** Indexer
24 # after packaging (see above)
25
26 $ java -jar target/Krill-Indexer.jar -c [configuration file]
27 -i [input directories] -o [output directory]
28
29 for example:
30
31 $ java -jar target/Krill-Indexer.jar -c src/test/resources/krill.properties
32 -i src/test/resources/bzk -o index/
33
34 -->
Nils Diewaldf399a672013-11-18 17:55:22 +000035
Akrone1befe02021-07-27 13:34:51 +020036 <groupId>de.ids_mannheim.korap</groupId>
37 <artifactId>Krill</artifactId>
Marc Kupietz2eb67522022-10-13 21:53:14 +020038 <version>0.60.6</version>
Akrone1befe02021-07-27 13:34:51 +020039 <packaging>jar</packaging>
Nils Diewaldf399a672013-11-18 17:55:22 +000040
Akrone1befe02021-07-27 13:34:51 +020041 <name>Krill</name>
42 <url>https://korap.ids-mannheim.de/</url>
43
44 <organization>
45 <name>IDS Mannheim</name>
46 <url>https://www.ids-mannheim.de/</url>
47 </organization>
Nils Diewaldf399a672013-11-18 17:55:22 +000048
Akrone1befe02021-07-27 13:34:51 +020049 <developers>
50 <developer>
51 <name>Nils Diewald</name>
52 <email>diewald@ids-mannheim.de</email>
53 <url>https://www.nils-diewald.de</url>
54 </developer>
55 <developer>
56 <name>Eliza Margaretha</name>
57 <email>margaretha@ids-mannheim.de</email>
58 </developer>
59 </developers>
Nils Diewald8a1fc012014-02-19 15:23:33 +000060
Akrone1befe02021-07-27 13:34:51 +020061 <properties>
62 <java.version>1.8</java.version>
Akron91187322022-03-29 09:39:45 +020063 <jersey.version>3.0.4</jersey.version>
Marc Kupietz2eb67522022-10-13 21:53:14 +020064 <jackson.version>2.13.4</jackson.version>
Akron91187322022-03-29 09:39:45 +020065 <log4j.version>[2.17.2,)</log4j.version>
Akrone1befe02021-07-27 13:34:51 +020066 <lucene.version>5.0.0</lucene.version>
Akrone1befe02021-07-27 13:34:51 +020067 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
68 </properties>
Nils Diewaldf399a672013-11-18 17:55:22 +000069
Akrone1befe02021-07-27 13:34:51 +020070 <dependencyManagement>
71 <dependencies>
72 <dependency>
73 <groupId>org.glassfish.jersey</groupId>
74 <artifactId>jersey-bom</artifactId>
75 <version>${jersey.version}</version>
76 <type>pom</type>
77 <scope>import</scope>
78 </dependency>
79 </dependencies>
80 </dependencyManagement>
Nils Diewald32030a62014-09-03 20:16:50 +000081
Akrone1befe02021-07-27 13:34:51 +020082 <dependencies>
83 <!-- junit dependency -->
Akronab2b3a52018-01-11 16:10:46 +010084 <dependency>
Akrone1befe02021-07-27 13:34:51 +020085 <groupId>junit</groupId>
86 <artifactId>junit</artifactId>
87 <version>4.13.2</version>
88 <scope>test</scope>
89 </dependency>
90
91 <!-- https://mvnrepository.com/artifact/jakarta.ws.rs/jakarta.ws.rs-api -->
92 <dependency>
93 <groupId>jakarta.ws.rs</groupId>
94 <artifactId>jakarta.ws.rs-api</artifactId>
95 <version>3.0.0</version>
96 </dependency>
97
98 <!-- log4j dependency -->
99 <dependency>
100 <groupId>org.apache.logging.log4j</groupId>
101 <artifactId>log4j-api</artifactId>
102 <version>${log4j.version}</version>
103 </dependency>
104 <dependency>
105 <groupId>org.apache.logging.log4j</groupId>
106 <artifactId>log4j-core</artifactId>
107 <version>${log4j.version}</version>
108 </dependency>
Akronab2b3a52018-01-11 16:10:46 +0100109 <dependency>
110 <groupId>org.apache.logging.log4j</groupId>
111 <artifactId>log4j-slf4j-impl</artifactId>
Akron92798062021-07-27 11:58:21 +0200112 <version>${log4j.version}</version>
Akronab2b3a52018-01-11 16:10:46 +0100113 </dependency>
Akrone1befe02021-07-27 13:34:51 +0200114 <dependency>
115 <groupId>org.slf4j</groupId>
116 <artifactId>jul-to-slf4j</artifactId>
117 <version>1.7.32</version>
118 </dependency>
119
120 <dependency>
121 <groupId>net.sf.ehcache</groupId>
122 <artifactId>ehcache</artifactId>
123 <version>2.10.9.2</version>
124 </dependency>
125
126 <!-- SQLite for database connection tests -->
127 <dependency>
128 <groupId>org.xerial</groupId>
129 <artifactId>sqlite-jdbc</artifactId>
Akron91187322022-03-29 09:39:45 +0200130 <version>3.36.0.3</version>
Akrone1befe02021-07-27 13:34:51 +0200131 </dependency>
132
133 <!-- Database Connection Pool Manager -->
134 <dependency>
135 <groupId>com.mchange</groupId>
136 <artifactId>c3p0</artifactId>
137 <version>0.9.5.5</version>
138 </dependency>
139
140 <!-- Lucene core dependency -->
141 <dependency>
142 <artifactId>lucene-core</artifactId>
143 <groupId>org.apache.lucene</groupId>
144 <type>jar</type>
145 <version>${lucene.version}</version>
146 </dependency>
147
148 <!-- Lucene queryparser dependency -->
149 <dependency>
150 <artifactId>lucene-queryparser</artifactId>
151 <groupId>org.apache.lucene</groupId>
152 <type>jar</type>
153 <version>${lucene.version}</version>
154 </dependency>
155
156 <!-- Lucene analyzers dependency -->
157 <dependency>
158 <artifactId>lucene-analyzers-common</artifactId>
159 <groupId>org.apache.lucene</groupId>
160 <type>jar</type>
161 <version>${lucene.version}</version>
162 </dependency>
163
164 <!-- JCache -->
165 <dependency>
166 <groupId>net.sf.jsr107cache</groupId>
167 <artifactId>jsr107cache</artifactId>
168 <version>1.1</version>
169 </dependency>
Nils Diewaldf5ab4b22015-02-25 20:55:16 +0000170
Akrone1befe02021-07-27 13:34:51 +0200171 <!-- Jersey -->
172 <dependency>
173 <groupId>org.glassfish.jersey.containers</groupId>
174 <artifactId>jersey-container-grizzly2-http</artifactId>
175 </dependency>
176
177 <!-- JSON support in Jersey -->
178 <dependency>
179 <groupId>com.fasterxml.jackson.jaxrs</groupId>
180 <artifactId>jackson-jaxrs-json-provider</artifactId>
Akrond6c77b42022-10-05 12:34:15 +0200181 <version>${jackson.version}</version>
Akrone1befe02021-07-27 13:34:51 +0200182 </dependency>
183
184 <dependency>
185 <groupId>org.glassfish.jersey.inject</groupId>
186 <artifactId>jersey-hk2</artifactId>
187 <version>${jersey.version}</version>
188 </dependency>
189
190 <!-- JSON support using Jackson -->
191 <!-- see https://github.com/FasterXML/jackson-core -->
192 <!-- https://github.com/FasterXML/jackson-databind -->
193 <dependency>
194 <groupId>com.fasterxml.jackson.core</groupId>
195 <artifactId>jackson-databind</artifactId>
Marc Kupietz2eb67522022-10-13 21:53:14 +0200196 <version>${jackson.version}.1</version>
Akrone1befe02021-07-27 13:34:51 +0200197 </dependency>
198 <dependency>
199 <groupId>com.fasterxml.jackson.core</groupId>
200 <artifactId>jackson-annotations</artifactId>
201 <version>${jackson.version}</version>
202 </dependency>
203 <dependency>
204 <groupId>com.fasterxml.jackson.core</groupId>
205 <artifactId>jackson-core</artifactId>
206 <version>${jackson.version}</version>
207 </dependency>
208
209 <!-- JSON-LD support -->
210 <!-- <dependency> <groupId>com.github.jsonld-java</groupId> <artifactId>jsonld-java</artifactId>
211 <version>0.5.2-SNAPSHOT</version> </dependency> Temporarily disable @Experimental
212 annotation <dependency> <groupId>KorapAnnotationProcessor</groupId> <artifactId>KorapAnnotationProcessor</artifactId>
213 <version>0.0.1-SNAPSHOT</version> <scope>compile</scope> </dependency> -->
214
215 <!-- Some language extensions like StringUtil, IOUtils ... -->
216 <dependency>
217 <groupId>org.apache.commons</groupId>
218 <artifactId>commons-lang3</artifactId>
219 <version>3.12.0</version>
220 </dependency>
221
222 <dependency>
223 <groupId>commons-cli</groupId>
224 <artifactId>commons-cli</artifactId>
Akron91187322022-03-29 09:39:45 +0200225 <version>1.5.0</version>
Akrone1befe02021-07-27 13:34:51 +0200226 </dependency>
227 <dependency>
228 <groupId>commons-io</groupId>
229 <artifactId>commons-io</artifactId>
230 <version>2.11.0</version>
231 </dependency>
Akron22d319e2018-04-01 17:13:49 +0200232 </dependencies>
Marc Kupietz6d76d9d2022-11-13 07:29:31 +0100233
Akrone1befe02021-07-27 13:34:51 +0200234 <build>
235 <sourceDirectory>${basedir}/src/main/java</sourceDirectory>
236 <outputDirectory>${basedir}/bin</outputDirectory>
237 <plugins>
238 <plugin>
239 <artifactId>maven-compiler-plugin</artifactId>
Akron91187322022-03-29 09:39:45 +0200240 <version>3.10.1</version>
Akrone1befe02021-07-27 13:34:51 +0200241 <inherited>true</inherited>
242 <configuration>
243 <showWarnings>true</showWarnings>
244 <source>${java.version}</source>
245 <target>${java.version}</target>
246 </configuration>
247 </plugin>
248
249 <plugin>
250 <groupId>org.apache.maven.plugins</groupId>
251 <artifactId>maven-shade-plugin</artifactId>
252 <version>3.2.4</version>
253 <executions>
254 <execution>
255 <id>indexer</id>
256 <phase>package</phase>
257 <goals>
258 <goal>shade</goal>
259 </goals>
260 <configuration>
261 <transformers>
262 <transformer
263 implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
264 <mainClass>de.ids_mannheim.korap.index.Indexer</mainClass>
265 </transformer>
266 </transformers>
267 <finalName>${project.artifactId}-Indexer</finalName>
268 </configuration>
269 </execution>
270 <execution>
271 <id>server</id>
272 <phase>package</phase>
273 <goals>
274 <goal>shade</goal>
275 </goals>
276 <configuration>
277 <transformers>
278 <transformer
279 implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
280 <mainClass>de.ids_mannheim.korap.server.Node</mainClass>
281 </transformer>
282 <transformer
283 implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
284 <resource>krill.properties</resource>
285 </transformer>
286 </transformers>
287 <finalName>${project.name}-Server</finalName>
288 </configuration>
289 </execution>
290 </executions>
291 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100292
Akrone1befe02021-07-27 13:34:51 +0200293 <plugin>
294 <groupId>org.apache.maven.plugins</groupId>
295 <artifactId>maven-surefire-plugin</artifactId>
296 <version>2.22.2</version>
297 <configuration>
298 <useSystemClassLoader>false</useSystemClassLoader>
299 <argLine>-Xmx512m</argLine>
300 <excludes>
301 <exclude>**/benchmark/*</exclude>
302 <exclude>**/TestWPDIndex.java</exclude>
303 <exclude>**/TestRealIndex.java</exclude>
304 <exclude>**/TestSampleIndex.java</exclude>
305 <exclude>**/TestParallelIndex.java</exclude>
306 </excludes>
307 </configuration>
308 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100309
Akrone1befe02021-07-27 13:34:51 +0200310 <!-- Formatter plugin for Eclipse based coding conventions http://maven-java-formatter-plugin.googlecode.com/svn/site/0.4/usage.html -->
311 <plugin>
312 <groupId>com.googlecode.maven-java-formatter-plugin</groupId>
313 <artifactId>maven-java-formatter-plugin</artifactId>
314 <version>0.4</version>
315 <configuration>
316 <configFile>${project.basedir}/Format.xml</configFile>
317 <overrideConfigCompilerVersion>true</overrideConfigCompilerVersion>
318 <compilerSource>${java.version}</compilerSource>
319 <compilerCompliance>${java.version}</compilerCompliance>
320 <compilerTargetPlatform>${java.version}</compilerTargetPlatform>
321 </configuration>
322 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100323
Akrone1befe02021-07-27 13:34:51 +0200324 <plugin>
325 <groupId>org.codehaus.mojo</groupId>
326 <artifactId>exec-maven-plugin</artifactId>
327 <version>3.0.0</version>
328 <executions>
329 <execution>
330 <goals>
331 <goal>java</goal>
332 </goals>
333 </execution>
334 </executions>
335 <configuration>
336 <mainClass>de.ids_mannheim.korap.server.Node</mainClass>
337 </configuration>
338 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100339
Akrone1befe02021-07-27 13:34:51 +0200340 </plugins>
Eliza Margarethaff416632016-11-03 15:08:07 +0100341
Akrone1befe02021-07-27 13:34:51 +0200342 <resources>
343 <resource>
344 <directory>src/main/resources</directory>
345 <filtering>true</filtering>
346 <includes>
347 <include>krill.info</include>
348 </includes>
349 </resource>
350 <resource>
351 <directory>src/main/resources</directory>
352 <filtering>false</filtering>
353 <excludes>
354 <exclude>krill.info</exclude>
355 </excludes>
356 </resource>
357 </resources>
Marc Kupietz4369ed62020-11-12 10:05:44 +0100358
Akrone1befe02021-07-27 13:34:51 +0200359 <testResources>
360 <testResource>
361 <directory>src/test/resources</directory>
362 <filtering>true</filtering>
363 <includes>
364 <include>krill.properties</include>
365 </includes>
366 </testResource>
367 <testResource>
368 <directory>src/test/resources</directory>
369 <filtering>false</filtering>
370 <excludes>
371 <exclude>krill.properties</exclude>
372 </excludes>
373 </testResource>
374 </testResources>
375 </build>
Nils Diewaldf399a672013-11-18 17:55:22 +0000376</project>