<?xml version="1.0" encoding="UTF-8"?>
<!--
 #=============================================================================#
 # Copyright (c) 2018, 2022 Stephan Wahlbrink and others.
 # 
 # This program and the accompanying materials are made available under the
 # terms of the Eclipse Public License 2.0 which is available at
 # https://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
 # which is available at https://www.apache.org/licenses/LICENSE-2.0.
 # 
 # SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
 # 
 # Contributors:
 #     Stephan Wahlbrink <sw@wahlbrink.eu> - initial API and implementation
 #=============================================================================#
-->

<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	
	<parent>
		<groupId>org.eclipse.statet.3rdparty</groupId>
		<artifactId>bundle-recipes</artifactId>
		<version>4.5.0-SNAPSHOT</version>
		<relativePath>../bundle-recipes-pom.xml</relativePath>
	</parent>
	
	<artifactId>3rdparty.apache-lucene</artifactId>
	<version>4.5.0-SNAPSHOT</version>
	<packaging>pom</packaging>
	
	<name>Eclipse StatET 3rd Party Recipes - Apache Lucene</name>
	
	<modules>
		<module>org.apache.lucene.core</module>
		<module>org.apache.lucene.analyzers-common</module>
		<module>org.apache.lucene.queryparser</module>
		<module>org.apache.lucene.highlighter</module>
		
		<module>org.apache.lucene.queries</module>
		<module>org.apache.lucene.join</module>
	</modules>
	
</project>
