Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-5114

oak-segment-tar should declare embedded dependencies using compile scope

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 1.5.13
    • Fix Version/s: 1.5.14, 1.6.0
    • Component/s: segment-tar
    • Labels:
      None
    • Flags:
      Patch

      Description

      Problem: commons-math3 and the netty-* dependencies in oak-segment-tar are embedded in the osgi bundle, but still declared with <scope>provided</scope>.

      This makes non-osgi downstream dependencies (such as a maven project using this for local tests) fail with

      java.lang.NoClassDefFoundError: org/apache/commons/math3/stat/descriptive/DescriptiveStatistics
          at org.apache.jackrabbit.oak.segment.SegmentWriterBuilder.build(SegmentWriterBuilder.java:146)
      

      because maven does not include transitive dependencies with provided scope in the (test) classpath, nor can it read embedded bundles in jar.

      Solution: They should get the default compile scope.

        Attachments

        1. OAK-5114.patch
          2 kB
          Alexander Klimetschek

          Activity

            People

            • Assignee:
              stillalex Alex Deparvu
              Reporter:
              alexander.klimetschek Alexander Klimetschek
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: