blob: 79974de389a31f2a6733d8f7d9ce2cecd43fc0ba [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
Akronc65c9432023-09-11 10:55:53 +020036 <groupId>de.ids-mannheim.korap.krill</groupId>
Akrone1befe02021-07-27 13:34:51 +020037 <artifactId>Krill</artifactId>
Akron859fb542025-07-08 15:52:45 +020038 <version>0.64.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>
Akron88bf1e22025-11-14 12:37:46 +010062 <java.version>21</java.version>
margaretha63c24852025-12-09 12:26:17 +010063 <jersey.version>4.0.0</jersey.version>
dependabot[bot]152e1082025-09-23 00:01:20 +000064 <log4j.version>2.25.2</log4j.version>
dependabot[bot]6410fc42025-09-01 00:02:39 +000065 <jackson.version>2.20.1</jackson.version>
66 <jackson.mainversion>2.20</jackson.mainversion>
Akrone1befe02021-07-27 13:34:51 +020067 <lucene.version>5.0.0</lucene.version>
Akrone1befe02021-07-27 13:34:51 +020068 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
69 </properties>
Nils Diewaldf399a672013-11-18 17:55:22 +000070
Akrone1befe02021-07-27 13:34:51 +020071 <dependencyManagement>
72 <dependencies>
73 <dependency>
74 <groupId>org.glassfish.jersey</groupId>
75 <artifactId>jersey-bom</artifactId>
76 <version>${jersey.version}</version>
77 <type>pom</type>
78 <scope>import</scope>
79 </dependency>
80 </dependencies>
81 </dependencyManagement>
Nils Diewald32030a62014-09-03 20:16:50 +000082
Akrone1befe02021-07-27 13:34:51 +020083 <dependencies>
84 <!-- junit dependency -->
Akronab2b3a52018-01-11 16:10:46 +010085 <dependency>
Akrone1befe02021-07-27 13:34:51 +020086 <groupId>junit</groupId>
87 <artifactId>junit</artifactId>
88 <version>4.13.2</version>
89 <scope>test</scope>
90 </dependency>
91
92 <!-- https://mvnrepository.com/artifact/jakarta.ws.rs/jakarta.ws.rs-api -->
93 <dependency>
94 <groupId>jakarta.ws.rs</groupId>
95 <artifactId>jakarta.ws.rs-api</artifactId>
dependabot[bot]ba246c52024-05-03 00:04:59 +000096 <version>4.0.0</version>
Akrone1befe02021-07-27 13:34:51 +020097 </dependency>
98
99 <!-- log4j dependency -->
100 <dependency>
101 <groupId>org.apache.logging.log4j</groupId>
102 <artifactId>log4j-api</artifactId>
103 <version>${log4j.version}</version>
104 </dependency>
105 <dependency>
106 <groupId>org.apache.logging.log4j</groupId>
107 <artifactId>log4j-core</artifactId>
108 <version>${log4j.version}</version>
109 </dependency>
Akronab2b3a52018-01-11 16:10:46 +0100110 <dependency>
111 <groupId>org.apache.logging.log4j</groupId>
112 <artifactId>log4j-slf4j-impl</artifactId>
Akron92798062021-07-27 11:58:21 +0200113 <version>${log4j.version}</version>
Akronab2b3a52018-01-11 16:10:46 +0100114 </dependency>
Akrone1befe02021-07-27 13:34:51 +0200115 <dependency>
116 <groupId>org.slf4j</groupId>
117 <artifactId>jul-to-slf4j</artifactId>
dependabot[bot]8e34ab82025-02-26 00:23:26 +0000118 <version>2.0.17</version>
Akrone1befe02021-07-27 13:34:51 +0200119 </dependency>
Akronb17cc082022-11-16 11:16:31 +0100120
Akrone1befe02021-07-27 13:34:51 +0200121 <!-- SQLite for database connection tests -->
122 <dependency>
123 <groupId>org.xerial</groupId>
124 <artifactId>sqlite-jdbc</artifactId>
dependabot[bot]68407f92025-11-06 00:02:15 +0000125 <version>3.51.0.0</version>
Akrone1befe02021-07-27 13:34:51 +0200126 </dependency>
127
128 <!-- Database Connection Pool Manager -->
129 <dependency>
130 <groupId>com.mchange</groupId>
131 <artifactId>c3p0</artifactId>
dependabot[bot]80914d52025-06-24 01:08:30 +0000132 <version>0.11.2</version>
Akrone1befe02021-07-27 13:34:51 +0200133 </dependency>
134
135 <!-- Lucene core dependency -->
136 <dependency>
137 <artifactId>lucene-core</artifactId>
138 <groupId>org.apache.lucene</groupId>
139 <type>jar</type>
140 <version>${lucene.version}</version>
141 </dependency>
142
143 <!-- Lucene queryparser dependency -->
144 <dependency>
145 <artifactId>lucene-queryparser</artifactId>
146 <groupId>org.apache.lucene</groupId>
147 <type>jar</type>
148 <version>${lucene.version}</version>
149 </dependency>
150
151 <!-- Lucene analyzers dependency -->
152 <dependency>
153 <artifactId>lucene-analyzers-common</artifactId>
154 <groupId>org.apache.lucene</groupId>
155 <type>jar</type>
156 <version>${lucene.version}</version>
157 </dependency>
158
159 <!-- JCache -->
160 <dependency>
161 <groupId>net.sf.jsr107cache</groupId>
162 <artifactId>jsr107cache</artifactId>
163 <version>1.1</version>
164 </dependency>
Nils Diewaldf5ab4b22015-02-25 20:55:16 +0000165
Akron859fb542025-07-08 15:52:45 +0200166 <!-- Caffeine -->
167 <dependency>
168 <groupId>com.github.ben-manes.caffeine</groupId>
169 <artifactId>caffeine</artifactId>
170 <version>3.1.8</version>
171 </dependency>
172
Akrone1befe02021-07-27 13:34:51 +0200173 <!-- Jersey -->
174 <dependency>
175 <groupId>org.glassfish.jersey.containers</groupId>
176 <artifactId>jersey-container-grizzly2-http</artifactId>
177 </dependency>
178
179 <!-- JSON support in Jersey -->
180 <dependency>
181 <groupId>com.fasterxml.jackson.jaxrs</groupId>
182 <artifactId>jackson-jaxrs-json-provider</artifactId>
Akrond6c77b42022-10-05 12:34:15 +0200183 <version>${jackson.version}</version>
Akrone1befe02021-07-27 13:34:51 +0200184 </dependency>
185
186 <dependency>
187 <groupId>org.glassfish.jersey.inject</groupId>
188 <artifactId>jersey-hk2</artifactId>
189 <version>${jersey.version}</version>
190 </dependency>
191
192 <!-- JSON support using Jackson -->
193 <!-- see https://github.com/FasterXML/jackson-core -->
194 <!-- https://github.com/FasterXML/jackson-databind -->
195 <dependency>
196 <groupId>com.fasterxml.jackson.core</groupId>
197 <artifactId>jackson-databind</artifactId>
Akronab711ff2022-11-16 10:53:15 +0100198 <version>${jackson.version}</version>
Akrone1befe02021-07-27 13:34:51 +0200199 </dependency>
200 <dependency>
201 <groupId>com.fasterxml.jackson.core</groupId>
202 <artifactId>jackson-annotations</artifactId>
dependabot[bot]6410fc42025-09-01 00:02:39 +0000203 <version>${jackson.mainversion}</version>
Akrone1befe02021-07-27 13:34:51 +0200204 </dependency>
205 <dependency>
206 <groupId>com.fasterxml.jackson.core</groupId>
207 <artifactId>jackson-core</artifactId>
208 <version>${jackson.version}</version>
209 </dependency>
210
211 <!-- JSON-LD support -->
212 <!-- <dependency> <groupId>com.github.jsonld-java</groupId> <artifactId>jsonld-java</artifactId>
213 <version>0.5.2-SNAPSHOT</version> </dependency> Temporarily disable @Experimental
214 annotation <dependency> <groupId>KorapAnnotationProcessor</groupId> <artifactId>KorapAnnotationProcessor</artifactId>
215 <version>0.0.1-SNAPSHOT</version> <scope>compile</scope> </dependency> -->
216
217 <!-- Some language extensions like StringUtil, IOUtils ... -->
218 <dependency>
219 <groupId>org.apache.commons</groupId>
220 <artifactId>commons-lang3</artifactId>
dependabot[bot]c90119c2025-09-25 00:03:57 +0000221 <version>3.19.0</version>
Akrone1befe02021-07-27 13:34:51 +0200222 </dependency>
223
224 <dependency>
225 <groupId>commons-cli</groupId>
226 <artifactId>commons-cli</artifactId>
dependabot[bot]babc8b92025-08-04 00:12:24 +0000227 <version>1.10.0</version>
Akrone1befe02021-07-27 13:34:51 +0200228 </dependency>
229 <dependency>
230 <groupId>commons-io</groupId>
231 <artifactId>commons-io</artifactId>
dependabot[bot]b36d0042025-11-10 00:01:45 +0000232 <version>2.21.0</version>
Akrone1befe02021-07-27 13:34:51 +0200233 </dependency>
Marc Kupietz2db71732025-07-20 10:47:14 +0200234
235 <!-- Apache Commons Compress for tar archive support -->
236 <dependency>
237 <groupId>org.apache.commons</groupId>
238 <artifactId>commons-compress</artifactId>
dependabot[bot]77d15262025-07-30 00:56:02 +0000239 <version>1.28.0</version>
Marc Kupietz2db71732025-07-20 10:47:14 +0200240 </dependency>
Akron22d319e2018-04-01 17:13:49 +0200241 </dependencies>
Marc Kupietz6d76d9d2022-11-13 07:29:31 +0100242
Akrone1befe02021-07-27 13:34:51 +0200243 <build>
244 <sourceDirectory>${basedir}/src/main/java</sourceDirectory>
245 <outputDirectory>${basedir}/bin</outputDirectory>
246 <plugins>
247 <plugin>
248 <artifactId>maven-compiler-plugin</artifactId>
dependabot[bot]7a9ea322025-09-23 00:01:09 +0000249 <version>3.14.1</version>
Akrone1befe02021-07-27 13:34:51 +0200250 <inherited>true</inherited>
251 <configuration>
252 <showWarnings>true</showWarnings>
253 <source>${java.version}</source>
254 <target>${java.version}</target>
255 </configuration>
256 </plugin>
257
258 <plugin>
259 <groupId>org.apache.maven.plugins</groupId>
260 <artifactId>maven-shade-plugin</artifactId>
dependabot[bot]584c16c2025-09-15 00:01:05 +0000261 <version>3.6.1</version>
Akrone1befe02021-07-27 13:34:51 +0200262 <executions>
263 <execution>
264 <id>indexer</id>
265 <phase>package</phase>
266 <goals>
267 <goal>shade</goal>
268 </goals>
269 <configuration>
Marc Kupietzc38dc9f2024-02-19 15:58:00 +0100270 <createDependencyReducedPom>false</createDependencyReducedPom>
Akrone1befe02021-07-27 13:34:51 +0200271 <transformers>
272 <transformer
273 implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
274 <mainClass>de.ids_mannheim.korap.index.Indexer</mainClass>
275 </transformer>
276 </transformers>
277 <finalName>${project.artifactId}-Indexer</finalName>
278 </configuration>
279 </execution>
280 <execution>
281 <id>server</id>
282 <phase>package</phase>
283 <goals>
284 <goal>shade</goal>
285 </goals>
286 <configuration>
Marc Kupietzc38dc9f2024-02-19 15:58:00 +0100287 <createDependencyReducedPom>false</createDependencyReducedPom>
Akrone1befe02021-07-27 13:34:51 +0200288 <transformers>
289 <transformer
290 implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
291 <mainClass>de.ids_mannheim.korap.server.Node</mainClass>
292 </transformer>
293 <transformer
294 implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
295 <resource>krill.properties</resource>
296 </transformer>
297 </transformers>
298 <finalName>${project.name}-Server</finalName>
299 </configuration>
300 </execution>
301 </executions>
302 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100303
Akrone1befe02021-07-27 13:34:51 +0200304 <plugin>
305 <groupId>org.apache.maven.plugins</groupId>
306 <artifactId>maven-surefire-plugin</artifactId>
dependabot[bot]f209cd82025-09-15 00:01:13 +0000307 <version>3.5.4</version>
Akrone1befe02021-07-27 13:34:51 +0200308 <configuration>
309 <useSystemClassLoader>false</useSystemClassLoader>
310 <argLine>-Xmx512m</argLine>
311 <excludes>
312 <exclude>**/benchmark/*</exclude>
313 <exclude>**/TestWPDIndex.java</exclude>
314 <exclude>**/TestRealIndex.java</exclude>
315 <exclude>**/TestSampleIndex.java</exclude>
316 <exclude>**/TestParallelIndex.java</exclude>
317 </excludes>
318 </configuration>
319 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100320
Akrone1befe02021-07-27 13:34:51 +0200321 <!-- Formatter plugin for Eclipse based coding conventions http://maven-java-formatter-plugin.googlecode.com/svn/site/0.4/usage.html -->
322 <plugin>
323 <groupId>com.googlecode.maven-java-formatter-plugin</groupId>
324 <artifactId>maven-java-formatter-plugin</artifactId>
325 <version>0.4</version>
326 <configuration>
327 <configFile>${project.basedir}/Format.xml</configFile>
328 <overrideConfigCompilerVersion>true</overrideConfigCompilerVersion>
329 <compilerSource>${java.version}</compilerSource>
330 <compilerCompliance>${java.version}</compilerCompliance>
331 <compilerTargetPlatform>${java.version}</compilerTargetPlatform>
332 </configuration>
333 </plugin>
Eliza Margarethaff416632016-11-03 15:08:07 +0100334
Marc Kupietz58e0aaa2024-03-17 18:44:41 +0100335 <plugin>
336 <groupId>org.codehaus.mojo</groupId>
337 <artifactId>exec-maven-plugin</artifactId>
dependabot[bot]a4f58f82025-10-20 00:01:18 +0000338 <version>3.6.2</version>
Marc Kupietz58e0aaa2024-03-17 18:44:41 +0100339 <executions>
340 <execution>
341 <goals>
342 <goal>java</goal>
343 </goals>
344 <configuration>
345 <mainClass>de.ids_mannheim.korap.server.Node</mainClass>
346 </configuration>
347 </execution>
348 <execution>
349 <id>run-krill-indexer-jar</id>
350 <phase>verify</phase>
351 <goals>
352 <goal>exec</goal>
353 </goals>
354 <configuration>
355 <executable>java</executable>
356 <arguments>
357 <argument>-jar</argument>
358 <argument>${project.build.directory}/Krill-Indexer.jar</argument>
359 </arguments>
360 </configuration>
361 </execution>
362 </executions>
363 </plugin>
Akrone1befe02021-07-27 13:34:51 +0200364 </plugins>
Eliza Margarethaff416632016-11-03 15:08:07 +0100365
Akrone1befe02021-07-27 13:34:51 +0200366 <resources>
367 <resource>
368 <directory>src/main/resources</directory>
369 <filtering>true</filtering>
370 <includes>
371 <include>krill.info</include>
372 </includes>
373 </resource>
374 <resource>
375 <directory>src/main/resources</directory>
376 <filtering>false</filtering>
377 <excludes>
378 <exclude>krill.info</exclude>
379 </excludes>
380 </resource>
381 </resources>
Marc Kupietz4369ed62020-11-12 10:05:44 +0100382
Akrone1befe02021-07-27 13:34:51 +0200383 <testResources>
384 <testResource>
385 <directory>src/test/resources</directory>
386 <filtering>true</filtering>
387 <includes>
388 <include>krill.properties</include>
389 </includes>
390 </testResource>
391 <testResource>
392 <directory>src/test/resources</directory>
393 <filtering>false</filtering>
394 <excludes>
395 <exclude>krill.properties</exclude>
396 </excludes>
397 </testResource>
398 </testResources>
399 </build>
Nils Diewaldf399a672013-11-18 17:55:22 +0000400</project>