[
https://issues.apache.org/jira/browse/TIKA-1368?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14062024#comment-14062024
]
Ken Krugler commented on TIKA-1368:
-----------------------------------
While I also wish there was a better way to get only the required jars for a
subset of parsers, requiring users to add transitive dependencies explicitly
isn't a viable solution, IMHO. The main issue with either #1 or #2 is that you
won't know you're missing a required dependency until runtime, when you get a
class not found exception. And that in turn might be triggered by any one of a
number of paths through the code, based on the file's content.
> Improve the modularity of tika-parsers
> --------------------------------------
>
> Key: TIKA-1368
> URL: https://issues.apache.org/jira/browse/TIKA-1368
> Project: Tika
> Issue Type: Improvement
> Components: packaging, parser
> Affects Versions: 1.7
> Reporter: Sergey Beryozkin
>
> tika-parsers module has many strong transitive dependencies. This presents a
> challenge to Maven tika-parsers users wishing to use only one or very few
> Parser(s).
> The fact the new Parsers are regularly added makes the exclusion process very
> brittle. For example, an OSGI application switching from Tika 1.6 to Tika 1.7
> and having an exclusion list in place may 'leak' a new parser lib into its
> runtime.
> https://issues.apache.org/jira/browse/TIKA-1367
> can help on its own but a more complete solution would ideally be in place.
> Proposal:
> 1. Make tika-parsers transitive dependencies optional
> 2. Introduce tika-parsers-optional pom that will depend on tika-parsers but
> exclude 3rd-party dependencies
> Both 1 and 2 will depend on the resolution of TIKA-1367. IMHO 1 is cleaner,
> users will be recommended to check the documentation and add the required
> dependencies. 2 also works.
--
This message was sent by Atlassian JIRA
(v6.2#6252)