: The "dir" is documented as:
:   dir - dir to use as the current working directory. default="."
:
: And its default value is defined as:
:   <str name="dir">solr/bin</str>
:
: The error was:
:    Cannot run program "snapshooter" (in directory 
"/foo/jetty-6.1.3/solr/bin"): java.io.IOException: error=2, No such file or 
directory
:
: All of this makes you (me) think that Solr uses the dir + exe name to
: call snapshooter with the full path, a la
: "/foo/jetty-6.1.3/solr/bin/snapshooter", which must not be the case.

no, the RunExecuterListern executes the exe specified usinbg the CWD of
the dir specified ... unless you set some env options, you can mimic
exactly what it's doing by CDing to the directory logged, and running "env
-i [exex name] [your args]

we could probably cahnge the log message to be more explicit about what it
tried to do.

: Moreover, it looks like even though I set Solr home to be outside Jetty
: directory, one has to put the dir that is the Solr home dir under Jetty,
: or at least link <jetty>/solr/bin to <solr home>/bin, OR change that
: "dir" to be ../solr/bin (but this didn't work without adding
: /full/path/to/solr/bin to PATH).

I'm not sure i understand ... part of hte confusion here may be that i
don't think the "dir" directory of the executor is resolved relative
solr.home ... it's relative the CWD of teh servlet container.

ideally we should document that it should be an absolute path whenever
possible ... but we can't do that in the example.



-Hoss

Reply via email to