modules
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>com.strapdata.elasticsearch.module</groupId> <artifactId>modules</artifactId> <version>2.4.5</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <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> <groupId>com.strapdata.elasticsearch.module</groupId> <artifactId>modules</artifactId> <version>2.4.5</version> <packaging>pom</packaging> <name>Module: Parent POM</name> <inceptionYear>2009</inceptionYear> <description>A parent project for Elasticsearch modules (Internal)</description> <parent> <groupId>com.strapdata.elasticsearch</groupId> <artifactId>parent</artifactId> <version>2.4.5</version> </parent> <properties> <elasticsearch.assembly.descriptor>${elasticsearch.tools.directory}/plugin-metadata/plugin-assembly.xml</elasticsearch.assembly.descriptor> <elasticsearch.assembly.appendId>false</elasticsearch.assembly.appendId> <elasticsearch.plugin.name>${project.artifactId}</elasticsearch.plugin.name> <elasticsearch.plugin.jvm>true</elasticsearch.plugin.jvm> <elasticsearch.plugin.isolated>true</elasticsearch.plugin.isolated> <elasticsearch.plugin.site>false</elasticsearch.plugin.site> </properties> <dependencies> <!-- elasticsearch and its test framework --> <dependency> <groupId>org.hamcrest</groupId> <artifactId>hamcrest-all</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-test-framework</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>com.strapdata.elasticsearch</groupId> <artifactId>elasticsearch</artifactId> <type>test-jar</type> <scope>test</scope> </dependency> <!-- Provided dependencies by elasticsearch itself --> <dependency> <groupId>com.strapdata.elasticsearch</groupId> <artifactId>elasticsearch</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-core</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-backward-codecs</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-analyzers-common</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-queries</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-memory</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-highlighter</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-queryparser</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-suggest</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-join</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-spatial</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.spatial4j</groupId> <artifactId>spatial4j</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.vividsolutions</groupId> <artifactId>jts</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.github.spullara.mustache.java</groupId> <artifactId>compiler</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.carrotsearch</groupId> <artifactId>hppc</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-smile</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-yaml</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-cbor</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.yaml</groupId> <artifactId>snakeyaml</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.ning</groupId> <artifactId>compress-lzf</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>com.tdunning</groupId> <artifactId>t-digest</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>apache-log4j-extras</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>net.java.dev.jna</groupId> <artifactId>jna</artifactId> <scope>provided</scope> </dependency> <!-- Required by the REST test framework --> <!-- TODO: remove this dependency when we will have a REST Test module --> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <scope>test</scope> </dependency> <!-- trying to outsmart maven: the result will likely be jar hell --> <dependency> <groupId>com.strapdata.elasticsearch.distribution.test</groupId> <artifactId>elasticsearch</artifactId> <version>${elasticsearch.version}</version> <type>zip</type> <scope>test</scope> </dependency> </dependencies> <!-- typical layout for plugins --> <build> <testResources> <testResource> <directory>src/test/resources</directory> <includes> <include>**/*</include> </includes> </testResource> <!-- REST API specifications copied from main Elasticsearch specs because they are required to execute the REST tests in plugins --> <testResource> <directory>${elasticsearch.tools.directory}/rest-api-spec</directory> <targetPath>rest-api-spec</targetPath> <includes> <!-- required by the test framework --> <include>api/info.json</include> <include>api/cluster.health.json</include> <include>api/cluster.state.json</include> <!-- used in plugin REST tests --> <include>api/index.json</include> <include>api/get.json</include> <include>api/get_script.json</include> <include>api/put_script.json</include> <include>api/delete_script.json</include> <include>api/update.json</include> <include>api/search.json</include> <include>api/tasks.list.json</include> <include>api/indices.analyze.json</include> <include>api/indices.create.json</include> <include>api/indices.refresh.json</include> <include>api/indices.put_mapping.json</include> <include>api/nodes.info.json</include> <include>api/count.json</include> <!-- used in repository plugin REST tests --> <include>api/snapshot.create_repository.json</include> <include>api/snapshot.get_repository.json</include> <!-- Reindex's REST spec lives in the core because that seems to be how modules are done --> <include>api/update_by_query.json</include> <include>api/reindex.json</include> <include>api/reindex_rethrottle.json</include> </includes> </testResource> <!-- shared test resources like log4j.properties --> <testResource> <directory>${elasticsearch.tools.directory}/shared-test-resources</directory> <filtering>false</filtering> </testResource> <!-- plugin metadata as a test resource --> <testResource> <directory>${basedir}/target/metadata-test-resources</directory> <filtering>false</filtering> </testResource> </testResources> <plugins> <!-- we don't have a proper .zip plugin structure for tests, but we need the metadata as test resource --> <plugin> <artifactId>maven-resources-plugin</artifactId> <executions> <execution> <id>copy-resources</id> <!-- process-resources makes more sense, but is not done by e.g. mvn eclipse:eclipse! --> <phase>generate-resources</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${basedir}/target/metadata-test-resources</outputDirectory> <resources> <resource> <directory>src/main/plugin-metadata</directory> <filtering>false</filtering> </resource> <resource> <directory>${elasticsearch.tools.directory}/plugin-metadata</directory> <filtering>true</filtering> </resource> </resources> </configuration> </execution> </executions> </plugin> <!-- integration tests --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <executions> <!-- start up external cluster --> <execution> <id>integ-setup</id> <phase>pre-integration-test</phase> <goals> <goal>run</goal> </goals> <configuration> <skip>${skip.integ.tests}</skip> <target> <ant antfile="${elasticsearch.integ.antfile}" target="start-external-cluster-with-module"> <property name="tests.jvm.argline" value="${tests.jvm.argline}"/> </ant> </target> </configuration> </execution> <!-- shut down external cluster --> <execution> <id>integ-teardown</id> <phase>post-integration-test</phase> <goals> <goal>run</goal> </goals> <configuration> <skip>${skip.integ.tests}</skip> <target> <ant antfile="${elasticsearch.integ.antfile}" target="stop-external-cluster"/> </target> </configuration> </execution> </executions> </plugin> </plugins> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <configuration> <appendAssemblyId>${elasticsearch.assembly.appendId}</appendAssemblyId> <outputDirectory>${project.build.directory}/releases/</outputDirectory> <descriptors> <descriptor>${elasticsearch.assembly.descriptor}</descriptor> </descriptors> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <executions> <execution> <id>enforce-plugin-classname</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireProperty> <property>elasticsearch.plugin.classname</property> <property>elasticsearch.plugin.name</property> </requireProperty> </rules> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>integ-setup-dependencies</id> <phase>pre-integration-test</phase> <goals> <goal>copy</goal> </goals> <configuration> <skip>${skip.integ.tests}</skip> <artifactItems> <artifactItem> <groupId>com.strapdata.elasticsearch.distribution.test</groupId> <artifactId>elasticsearch</artifactId> <version>${elasticsearch.version}</version> <type>zip</type> <overWrite>true</overWrite> </artifactItem> </artifactItems> <useBaseVersion>true</useBaseVersion> <outputDirectory>${integ.deps}</outputDirectory> </configuration> </execution> </executions> </plugin> <plugin> <groupId>com.carrotsearch.randomizedtesting</groupId> <artifactId>junit4-maven-plugin</artifactId> <executions> <execution> <id>integ-tests</id> <configuration> <!-- currently only 1 cpu works, because integ tests don't make "unique" test directories? --> <parallelism>1</parallelism> <systemProperties> <!-- use external cluster --> <tests.cluster>localhost:${integ.transport.port}</tests.cluster> </systemProperties> </configuration> </execution> </executions> </plugin> </plugins> </pluginManagement> </build> <modules> <module>lang-expression</module> <module>lang-groovy</module> <module>reindex</module> </modules> </project>