Details
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
Attachments
Issue Links
- links to