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

Composite External Parser like Exiftool fails to run on Windows.

Agile BoardAttach filesAttach ScreenshotVotersStop watchingWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Won't Fix
    • 1.12
    • 1.14
    • core
    • None
    • Windows 10, Intel i7 6550U 64-Bit processor

    Description

      While trying to run EXIFTool Parser using Tika on Windows OS, we are getting following error output.
      (Ref: http://wiki.apache.org/tika/EXIFToolParser)

      java.io.IOException: Cannot run program "env": CreateProcess error=2, The system cannot find the file specified
      at java.lang.ProcessBuilder.start(Unknown Source)
      at java.lang.Runtime.exec(Unknown Source)
      at java.lang.Runtime.exec(Unknown Source)
      at org.apache.tika.parser.external.ExternalParser.parse(ExternalParser.java:182)
      at org.apache.tika.parser.external.ExternalParser.parse(ExternalParser.java:145)
      at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
      at org.apache.tika.parser.ParserDecorator.parse(ParserDecorator.java:177)
      at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
      at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
      at org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:120)
      at org.apache.tika.cli.TikaCLI$OutputType.process(TikaCLI.java:190)
      at org.apache.tika.cli.TikaCLI.process(TikaCLI.java:491)
      at org.apache.tika.cli.TikaCLI.main(TikaCLI.java:144)
      Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
      at java.lang.ProcessImpl.create(Native Method)
      at java.lang.ProcessImpl.<init>(Unknown Source)
      at java.lang.ProcessImpl.start(Unknown Source)
      ... 13 more
      Exception in thread "main" org.apache.tika.exception.TikaException: Unexpected RuntimeException from org.apache.tika.parser.external.ExternalParser@51efea79
      at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:282)
      at org.apache.tika.parser.ParserDecorator.parse(ParserDecorator.java:177)
      at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
      at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
      at org.apache.tika.parser.AutoDetectParser.parse(AutoDetectParser.java:120)
      at org.apache.tika.cli.TikaCLI$OutputType.process(TikaCLI.java:190)
      at org.apache.tika.cli.TikaCLI.process(TikaCLI.java:491)
      at org.apache.tika.cli.TikaCLI.main(TikaCLI.java:144)
      Caused by: java.lang.NullPointerException
      at org.apache.tika.parser.external.ExternalParser.parse(ExternalParser.java:218)
      at org.apache.tika.parser.external.ExternalParser.parse(ExternalParser.java:145)
      at org.apache.tika.parser.CompositeParser.parse(CompositeParser.java:280)
      ... 7 more

      After analyzing the stack trace and little experimentation, we found that "env" is unix/Mac OS X/Linux specific command and does not work on Windows.

      We were able to workaround this problem by adding some Windows specific code, recompile Tika and run again with similar setup. I am attaching the original file and modified file for review.

      If fix is acceptable by Tika specific standards, I can send the pull request on Github to contribute the patch.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            chrismattmann Chris A. Mattmann
            mit2nil Nilay Chheda
            Votes:
            0 Vote for this issue
            Watchers:
            4 Stop watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment