Uploaded image for project: 'Tika'
  1. Tika
  2. TIKA-2556

org.json package clash

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.17
    • 1.18, 2.0.0
    • parser
    • None

    Description

      Hello dear tika contributors.
      In version 1.16, the dependency of org.json:json (https://mvnrepository.com/artifact/org.json/json/20140107)
      was replaced with com.tdunning:json (https://mvnrepository.com/artifact/com.tdunning/json/1.8)
      as part of TIKA-1804.
      I read and understand the reasons.
      The problem I see is that the package org.json is reused in the replacement lib (com.tdunning) therefore creating really ugly runtime problems for any application that might use the old org.json lib ( Douglas Crockford ) either directly or indirectly (And please note that there are still a lot of libraries that use that lib: https://mvnrepository.com/artifact/org.json/json/usages)

      What is tika's recommendation for these kind of projects that have to(for various reasons) use directly or indirectly(brought in by another lib) that old org.json:json lib?

      This topic has been discussed here also : https://github.com/tdunning/open-json/issues/11
      As you can see other people have this problem.

      They forked and released an alternative version, that is identical in functionality, but uses a different package name : https://github.com/openjson/openjson -> https://mvnrepository.com/artifact/com.github.openjson/openjson

      Is there any plan to switch to the cleaner ("jar hell" free) implementation of json?

      Thank you!

      I raised this as an improvement, as I think that is what needs to happen: move to the forked lib version to avoid package name collisions.

      Attachments

        Activity

          People

            Unassigned Unassigned
            andrei.rebegea Andrei Rebegea
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: