Andreas Sewe created MINDEXER-107: ------------------------------------- Summary: Shaded-lucene indexer-core should have its own POM Key: MINDEXER-107 URL: https://issues.apache.org/jira/browse/MINDEXER-107 Project: Maven Indexer Issue Type: Improvement Affects Versions: 6.0 Reporter: Andreas Sewe Priority: Minor
While I like the idea that {{indexer-core}} is also available with a {{shaded-lucene}} classifier (given the likelihood of clashes with another, incompatible Lucene already on the classpath), the current, classifier-based implementation is not ideal: The {{shaded-lucene}} JAR shares its POM with the primary {{indexer-core}} JAR, i.e., there is no *dependency-reduced* POM available for easy consumption by clients. Thus, every user of the {{shaded-lucene}} JAR needs a lengthy {{<exclusions>}} list – which needs to be kept in-sync with {{lucene-core}}’s {{maven-shade-plugin}} configuration: {noformat} <dependency> <groupId>org.apache.maven.indexer</groupId> <artifactId>indexer-core</artifactId> <classifier>shaded-lucene</classifier> <version>6.0-SNAPSHOT</version> <exclusions> <exclusion> <groupId>org.apache.lucene</groupId> <artifactId>lucene-core</artifactId> </exclusion> <exclusion> <groupId>org.apache.lucene</groupId> <artifactId>lucene-queryparser</artifactId> </exclusion> <exclusion> <groupId>org.apache.lucene</groupId> <artifactId>lucene-queries</artifactId> </exclusion> <exclusion> <groupId>org.apache.lucene</groupId> <artifactId>lucene-sandbox</artifactId> </exclusion> <exclusion> <groupId>org.apache.lucene</groupId> <artifactId>lucene-analyzers-common</artifactId> </exclusion> <exclusion> <groupId>org.apache.lucene</groupId> <artifactId>lucene-backward-codecs</artifactId> </exclusion> <exclusion> <groupId>org.apache.lucene</groupId> <artifactId>lucene-highlighter</artifactId> </exclusion> <exclusion> <groupId>org.apache.lucene</groupId> <artifactId>lucene-join</artifactId> </exclusion> <exclusion> <groupId>org.apache.lucene</groupId> <artifactId>lucene-memory</artifactId> </exclusion> <exclusion> <groupId>org.apache.commons</groupId> <artifactId>commons-compress</artifactId> </exclusion> <exclusion> <groupId>org.bouncycastle</groupId> <artifactId>bcprov-jdk16</artifactId> </exclusion> </exclusions> </dependency> {noformat} IMHO, it would be better to have a separate {{indexer-core-standalone}} project whose dependency-reduced POM is deployed and thus available for easy consumption by clients -- This message was sent by Atlassian JIRA (v6.4.14#64029)