I share Alexandre's opinion. Having the code in a separate module would avoid
having to deal with optional dependencies and exclusions.

Cheers,

-- Richard

On 19.09.2014, at 04:57, Alexandre Patry <[email protected]> wrote:

> To my knowledge, the easiest way to make a dependency optional is to put the 
> code depending on it in a separate module.
> 
> A compromise is to make the jackson dependency optional (see 
> https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html).
>  This will require jackson to build the project, but it will not include it 
> in the transitional dependencies of uimaj. People needing JSON support will 
> have to declare the jackson dependency explicitly.
> 
> Personally, I would prefer a separate module.
> 
> Hope this help,
> 
> Alexandre
> 
> 
> On 14-09-18 05:06 PM, Marshall Schor wrote:
>> The Jackson Jars are not needed (in the binary distribution), if you do not 
>> want
>> the JSON support.  So this may not be an issue for consumers of UIMA - they
>> could just delete the Jackson Jar if they don't need it, from our 
>> "convenience"
>> binary packaging (I would hope we wouldn't need to provide 2 binary packages 
>> -
>> one with and one without...)
>> 
>> But I see a possible issue for developers, etc. building from source using
>> Eclipse or Maven; I agree it would be good to allow builds to succeed with 
>> and
>> without the Jackson jars, with the "without" case of course not running the 
>> JSON
>> test cases.
>> 
>> Anyone know how to make that happen?  I hope someone can think up a nice
>> approach :-)
>> 
>> -Marshall
>> 
>> On 9/18/2014 11:52 AM, Richard Eckart de Castilho wrote:
>>> Hi,
>>> 
>>> I have noticed that the new JSON support also introduces a new dependency 
>>> on jackson in uimaj-core.
>>> I wonder if that is a good idea since our users might need to get extra 
>>> permission from their legal
>>> departments to use the new library when they want to upgrade. Would it be 
>>> reasonable to maintain
>>> the JSON support in a separate module? Given the kind of very deep 
>>> integration that the JSON
>>> support appears to have, this might not even be easily possible.
>>> 
>>> What do you think?
>>> 
>>> Cheers,
>>> 
>>> -- Richard
> 
> -- 
> Alexandre Patry, Ph.D
> Chercheur / Researcher
> http://KeaText.com

Reply via email to