blob: 0796235dbe675921e4fe867f80ef4abef6224d95 [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>
margaretha405413e2023-03-27 16:20:08 +020038 <version>0.61.2</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>
Akronab711ff2022-11-16 10:53:15 +010062 <java.version>11</java.version>
Akron91187322022-03-29 09:39:45 +020063 <jersey.version>3.0.4</jersey.version>
Akronab711ff2022-11-16 10:53:15 +010064 <jackson.version>2.14.0</jackson.version>
65 <log4j.version>[2.19.0,)</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>
Akronab711ff2022-11-16 10:53:15 +010095 <version>3.1.0</version>
Akrone1befe02021-07-27 13:34:51 +020096 </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>
Akronab711ff2022-11-16 10:53:15 +0100117 <version>2.0.3</version>
Akrone1befe02021-07-27 13:34:51 +0200118 </dependency>
Akronb17cc082022-11-16 11:16:31 +0100119
Akrone1befe02021-07-27 13:34:51 +0200120 <!-- SQLite for database connection tests -->
121 <dependency>
122 <groupId>org.xerial</groupId>
123 <artifactId>sqlite-jdbc</artifactId>
dependabot[bot]361d2902023-05-23 20:16:43 +0000124 <version>3.41.2.2</version>
Akrone1befe02021-07-27 13:34:51 +0200125 </dependency>
126
127 <!-- Database Connection Pool Manager -->
128 <dependency>
129 <groupId>com.mchange</groupId>
130 <artifactId>c3p0</artifactId>
131 <version>0.9.5.5</version>
132 </dependency>
133
134 <!-- Lucene core dependency -->
135 <dependency>
136 <artifactId>lucene-core</artifactId>
137 <groupId>org.apache.lucene</groupId>
138 <type>jar</type>
139 <version>${lucene.version}</version>
140 </dependency>
141
142 <!-- Lucene queryparser dependency -->
143 <dependency>
144 <artifactId>lucene-queryparser</artifactId>
145 <groupId>org.apache.lucene</groupId>
146 <type>jar</type>
147 <version>${lucene.version}</version>
148 </dependency>
149
150 <!-- Lucene analyzers dependency -->
151 <dependency>
152 <artifactId>lucene-analyzers-common</artifactId>
153 <groupId>org.apache.lucene</groupId>
154 <type>jar</type>
155 <version>${lucene.version}</version>
156 </dependency>
157
158 <!-- JCache -->
159 <dependency>
160 <groupId>net.sf.jsr107cache</groupId>
161 <artifactId>jsr107cache</artifactId>
162 <version>1.1</version>
163 </dependency>
Nils Diewaldf5ab4b22015-02-25 20:55:16 +0000164
Akrone1befe02021-07-27 13:34:51 +0200165 <!-- Jersey -->
166 <dependency>
167 <groupId>org.glassfish.jersey.containers</groupId>
168 <artifactId>jersey-container-grizzly2-http</artifactId>
169 </dependency>
170
171 <!-- JSON support in Jersey -->
172 <dependency>
173 <groupId>com.fasterxml.jackson.jaxrs</groupId>
174 <artifactId>jackson-jaxrs-json-provider</artifactId>
Akrond6c77b42022-10-05 12:34:15 +0200175 <version>${jackson.version}</version>
Akrone1befe02021-07-27 13:34:51 +0200176 </dependency>
177
178 <dependency>
179 <groupId>org.glassfish.jersey.inject</groupId>
180 <artifactId>jersey-hk2</artifactId>
181 <version>${jersey.version}</version>
182 </dependency>
183
184 <!-- JSON support using Jackson -->
185 <!-- see https://github.com/FasterXML/jackson-core -->
186 <!-- https://github.com/FasterXML/jackson-databind -->
187 <dependency>
188 <groupId>com.fasterxml.jackson.core</groupId>
189 <artifactId>jackson-databind</artifactId>
Akronab711ff2022-11-16 10:53:15 +0100190 <version>${jackson.version}</version>
Akrone1befe02021-07-27 13:34:51 +0200191 </dependency>
192 <dependency>
193 <groupId>com.fasterxml.jackson.core</groupId>
194 <artifactId>jackson-annotations</artifactId>
195 <version>${jackson.version}</version>
196 </dependency>
197 <dependency>
198 <groupId>com.fasterxml.jackson.core</groupId>
199 <artifactId>jackson-core</artifactId>
200 <version>${jackson.version}</version>
201 </dependency>
202
203 <!-- JSON-LD support -->
204 <!-- <dependency> <groupId>com.github.jsonld-java</groupId> <artifactId>jsonld-java</artifactId>
205 <version>0.5.2-SNAPSHOT</version> </dependency> Temporarily disable @Experimental
206 annotation <dependency> <groupId>KorapAnnotationProcessor</groupId> <artifactId>KorapAnnotationProcessor</artifactId>
207 <version>0.0.1-SNAPSHOT</version> <scope>compile</scope> </dependency> -->
208
209 <!-- Some language extensions like StringUtil, IOUtils ... -->
210 <dependency>
211 <groupId>org.apache.commons</groupId>
212 <artifactId>commons-lang3</artifactId>
213 <version>3.12.0</version>
214 </dependency>
215
216 <dependency>
217 <groupId>commons-cli</groupId>
218 <artifactId>commons-cli</artifactId>
Akron91187322022-03-29 09:39:45 +0200219 <version>1.5.0</version>
Akrone1befe02021-07-27 13:34:51 +0200220 </dependency>
221 <dependency>
222 <groupId>commons-io</groupId>
223 <artifactId>commons-io</artifactId>
224 <version>2.11.0</version>
225 </dependency>
Akron22d319e2018-04-01 17:13:49 +0200226 </dependencies>
Marc Kupietz6d76d9d2022-11-13 07:29:31 +0100227
Akrone1befe02021-07-27 13:34:51 +0200228 <build>
229 <sourceDirectory>${basedir}/src/main/java</sourceDirectory>
230 <outputDirectory>${basedir}/bin</outputDirectory>
231 <plugins>
232 <plugin>
233 <artifactId>maven-compiler-plugin</artifactId>
Akron91187322022-03-29 09:39:45 +0200234 <version>3.10.1</version>
Akrone1befe02021-07-27 13:34:51 +0200235 <inherited>true</inherited>
236 <configuration>
237 <showWarnings>true</showWarnings>
238 <source>${java.version}</source>
239 <target>${java.version}</target>
240 </configuration>
241 </plugin>
242
243 <plugin>
244 <groupId>org.apache.maven.plugins</groupId>
245 <artifactId>maven-shade-plugin</artifactId>
246 <version>3.2.4</version>
247 <executions>
248 <execution>
249 <id>indexer</id>
250 <phase>package</phase>
251 <goals>
252 <goal>shade</goal>
253 </goals>
254 <configuration>
255 <transformers>
256 <transformer
257 implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
258 <mainClass>de.ids_mannheim.korap.index.Indexer</mainClass>
259 </transformer>
260 </transformers>
261 <finalName>${project.artifactId}-Indexer</finalName>
262 </configuration>
263 </execution>
264 <execution>
265 <id>server</id>
266 <phase>package</phase>
267 <goals>
268 <goal>shade</goal>
269 </goals>
270 <configuration>
271 <transformers>
272 <transformer
273 implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
274 <mainClass>de.ids_mannheim.korap.server.Node</mainClass>
275 </transformer>
276 <transformer
277 implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
278 <resource>krill.properties</resource>
279 </transformer>
280 </transformers>
281 <finalName>${project.name}-Server</finalName>
282 </configuration>
283 </execution>
284 </executions>
285 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100286
Akrone1befe02021-07-27 13:34:51 +0200287 <plugin>
288 <groupId>org.apache.maven.plugins</groupId>
289 <artifactId>maven-surefire-plugin</artifactId>
290 <version>2.22.2</version>
291 <configuration>
292 <useSystemClassLoader>false</useSystemClassLoader>
293 <argLine>-Xmx512m</argLine>
294 <excludes>
295 <exclude>**/benchmark/*</exclude>
296 <exclude>**/TestWPDIndex.java</exclude>
297 <exclude>**/TestRealIndex.java</exclude>
298 <exclude>**/TestSampleIndex.java</exclude>
299 <exclude>**/TestParallelIndex.java</exclude>
300 </excludes>
301 </configuration>
302 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100303
Akrone1befe02021-07-27 13:34:51 +0200304 <!-- Formatter plugin for Eclipse based coding conventions http://maven-java-formatter-plugin.googlecode.com/svn/site/0.4/usage.html -->
305 <plugin>
306 <groupId>com.googlecode.maven-java-formatter-plugin</groupId>
307 <artifactId>maven-java-formatter-plugin</artifactId>
308 <version>0.4</version>
309 <configuration>
310 <configFile>${project.basedir}/Format.xml</configFile>
311 <overrideConfigCompilerVersion>true</overrideConfigCompilerVersion>
312 <compilerSource>${java.version}</compilerSource>
313 <compilerCompliance>${java.version}</compilerCompliance>
314 <compilerTargetPlatform>${java.version}</compilerTargetPlatform>
315 </configuration>
316 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100317
Akrone1befe02021-07-27 13:34:51 +0200318 <plugin>
319 <groupId>org.codehaus.mojo</groupId>
320 <artifactId>exec-maven-plugin</artifactId>
Akronab711ff2022-11-16 10:53:15 +0100321 <version>3.1.0</version>
Akrone1befe02021-07-27 13:34:51 +0200322 <executions>
323 <execution>
324 <goals>
325 <goal>java</goal>
326 </goals>
327 </execution>
328 </executions>
329 <configuration>
330 <mainClass>de.ids_mannheim.korap.server.Node</mainClass>
331 </configuration>
332 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100333
Akrone1befe02021-07-27 13:34:51 +0200334 </plugins>
Eliza Margarethaff416632016-11-03 15:08:07 +0100335
Akrone1befe02021-07-27 13:34:51 +0200336 <resources>
337 <resource>
338 <directory>src/main/resources</directory>
339 <filtering>true</filtering>
340 <includes>
341 <include>krill.info</include>
342 </includes>
343 </resource>
344 <resource>
345 <directory>src/main/resources</directory>
346 <filtering>false</filtering>
347 <excludes>
348 <exclude>krill.info</exclude>
349 </excludes>
350 </resource>
351 </resources>
Marc Kupietz4369ed62020-11-12 10:05:44 +0100352
Akrone1befe02021-07-27 13:34:51 +0200353 <testResources>
354 <testResource>
355 <directory>src/test/resources</directory>
356 <filtering>true</filtering>
357 <includes>
358 <include>krill.properties</include>
359 </includes>
360 </testResource>
361 <testResource>
362 <directory>src/test/resources</directory>
363 <filtering>false</filtering>
364 <excludes>
365 <exclude>krill.properties</exclude>
366 </excludes>
367 </testResource>
368 </testResources>
369 </build>
Nils Diewaldf399a672013-11-18 17:55:22 +0000370</project>