[ 
https://issues.apache.org/jira/browse/TIKA-1925?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15222990#comment-15222990
 ] 

Nilay Chheda commented on TIKA-1925:
------------------------------------

Yes I agree with you on finding the origin of the problem. In fact, my first 
approach was to find, hard-coding of "env" command in the Tika source. But 
unfortunately I couldn't. So I had to work around for getting my assignment 
done for Prof. Mattman's class at USC. 

As far as ubuntu/bash is concerned, it is going to be available only for latest 
windows 10 builds (thanks to a new subsystem quietly placed into Windows 10 
build 14251 back in January. The lxcore.sys and lxss.sys files form the new 
“Windows Subsystem for Linux (WSL)). Why do we want to restrict Tika to select 
few environment when it is written in Java to be platform agnostic. 

I would give it another try and update if I can get a cleaner patch.

> Composite External Parser like Exiftool fails to run on Windows.
> ----------------------------------------------------------------
>
>                 Key: TIKA-1925
>                 URL: https://issues.apache.org/jira/browse/TIKA-1925
>             Project: Tika
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 1.12
>         Environment: Windows 10, Intel i7 6550U 64-Bit processor
>            Reporter: Nilay Chheda
>             Fix For: 1.13
>
>         Attachments: ExternalParser_modified.java, ExternalParser_orig.java
>
>
> 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. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to