Description
Currently starting solr fails if the user does not have permission to write to the current directory. This is caused by the resolve_java_vendor function writing a temporary file to the current directory (javares).
:resolve_java_vendor set "JAVA_VENDOR=Oracle" "%JAVA%" -version 2>&1 | findstr /i "IBM J9" > javares set /p JAVA_VENDOR_OUT=<javares del javares if NOT "%JAVA_VENDOR_OUT%" == "" ( set "JAVA_VENDOR=IBM J9" )
Rather than writing this temporary file to disk, The exit code of findstr can be used to determine if there is a match. (0 == match, 1 == no match, 2 == syntax error)
:resolve_java_vendor "%JAVA%" -version 2>&1 | findstr /i "IBM J9" > nul if %ERRORLEVEL% == 1 set "JAVA_VENDOR=Oracle" else set "JAVA_VENDOR=IBM J9"
By not writing this temp file, you can reduce the permissions solr needs. As a work around until this is fixed, you can start solr in a directory that has the required permissions,
Attachments
Attachments
Issue Links
- links to