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

Provide full Java module descriptors

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 3.0.0-BETA
    • None
    • core
    • None

    Description

      `v3.0.0-BETA` defines an automatic module name

      ```

      $ jarviz module name --gav org.apache.tika:tika-core:3.0.0-BETA
      subject: tika-core-3.0.0-BETA.jar
      name: org.apache.tika.core
      source: manifest
      automatic: true
      valid: true

      ```

      ```

      $ jarviz module descriptor --gav org.apache.tika:tika-core:3.0.0-BETA
      subject: tika-core-3.0.0-BETA.jar
      name: org.apache.tika.core
      version: 3.0.0-BETA
      open: false
      automatic: true
      requires:
        java.base mandated
      provides:
        org.apache.tika.metadata.filter.MetadataFilter with org.apache.tika.metadata.filter.NoOpFilter
      contains:
        org.apache.tika
        org.apache.tika.concurrent
        org.apache.tika.config
        org.apache.tika.detect
        org.apache.tika.embedder
        org.apache.tika.exception
        org.apache.tika.extractor
        org.apache.tika.fork
        org.apache.tika.io
        org.apache.tika.language.detect
        org.apache.tika.language.translate
        org.apache.tika.metadata
        org.apache.tika.metadata.filter
        org.apache.tika.metadata.writefilter
        org.apache.tika.mime
        org.apache.tika.parser
        org.apache.tika.parser.digest
        org.apache.tika.parser.external
        org.apache.tika.parser.external2
        org.apache.tika.parser.multiple
        org.apache.tika.pipes
        org.apache.tika.pipes.async
        org.apache.tika.pipes.emitter
        org.apache.tika.pipes.fetcher
        org.apache.tika.pipes.fetcher.fs
        org.apache.tika.pipes.fetcher.url
        org.apache.tika.pipes.pipesiterator
        org.apache.tika.pipes.pipesiterator.filelist
        org.apache.tika.pipes.pipesiterator.fs
        org.apache.tika.renderer
        org.apache.tika.sax
        org.apache.tika.sax.xpath
        org.apache.tika.utils

      ```

      I'd be great if the library supplied a full Java module descriptor. It's possible to keep bytecode baseline compatible with Java 8 while providing a full module descriptor thanks to ModiTect. This will help modular projects that consume feign-form, specifically those that create custom Java Runtimes with jlink, as the latter does not support automatic modules but explicit modules. If interested I can send a PR to make it happen.

      FWIW the whole of Apache Commons project has embraced ModiTect.

      Attachments

        Activity

          People

            Unassigned Unassigned
            aalmiray Andres Almiray
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: