eXist-db / exist

eXist Native XML Database and Application Platform
https://exist-db.org
GNU Lesser General Public License v2.1
429 stars 179 forks source link

Installer & Java9 (endorsed) #1671

Closed dizzzz closed 6 years ago

dizzzz commented 6 years ago

The installer fails with the following when setting the admin password:

The system cannot find the file C:\Localdata\Program.
"-Xms64m -Xmx768m -Djava.endorsed.dirs="C:\Localdata\eXist-db"\lib\endorsed"
Error: Could not create the Java Virtual Machine.
-Djava.endorsed.dirs=C:\Localdata\eXist-db\lib\endorsed is not supported. Endorsed standards and standalone APIs
in modular form will be supported via the concept of upgradeable modules.
Error: A fatal exception has occurred. Program will exit.

further investigation is needed; Java9 is installed

Context information

Please always add the following information

adamretter commented 6 years ago

The -Djava.endorsed.dirs has to be removed. I thought it had been done for all the scripts.

However grep -r "java.endorsed.dirs" $EXIST_HOME reveals that some of these are still present, predominantly for the Installer and Windows.

See - b73c755d

dizzzz commented 6 years ago

Thnx, I did not have the time yet to check the details. (I wrote the item so we don;t forget it)

adamretter commented 6 years ago

Yup all good. It was just fresh in my memory ;-)

dizzzz commented 6 years ago

Bonus item: build.bat might have the same construction...

dizzzz commented 6 years ago

there are (potentially) more:

build.properties:64:lib.endorsed = ./lib/endorsed
tools/backrest/build.xml:64:                    <fileset dir="${lib.endorsed}">      
tools/jsvc/exist-init.d.sh:42:JAVA_ENDORSED_DIR=$EXIST_HOME/lib/endorsed
tools/jsvc/exist-init.d.sh:64:    -Djava.endorsed.dir=$JAVA_ENDORSED_DIR \
tools/jsvc/exist-init.d.sh:89:    -Djava.endorsed.dir=$JAVA_ENDORSED_DIR \
tools/jsvc/exist.sh:31:JAVA_ENDORSED_DIR=$EXIST_HOME/lib/endorsed
tools/jsvc/exist.sh:47:    -Djava.endorsed.dir=$JAVA_ENDORSED_DIR \
tools/jsvc/exist.sh:69:    -Djava.endorsed.dir=$JAVA_ENDORSED_DIR \

bin/run.sh:62:JAVA_ENDORSED_DIRS="$EXIST_HOME"/lib/endorsed
bin/run.sh:70:  -Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS \
bin/run.sh:75:  -Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS \

build.bat:30:set JAVA_ENDORSED_DIRS=%EXIST_HOME%\lib\endorsed
build.bat:36:set _JAVA_OPTS=-Xms512m -Xmx512m -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -Dant.home="%ANT_HOME%" -Dexist.home="%EXIST_HOME%" -Djavax.xml.transform.TransformerFactory="org.apache.xalan.processor.TransformerFactoryImpl" %JAVA_OPTS%

build.sh:35:JAVA_ENDORSED_DIRS="$EXIST_HOME"/lib/endorsed
build.sh:42:JAVA_OPTS="-Dant.home=$ANT_HOME -Dant.library.dir=$ANT_HOME/lib -Djava.endorsed.dirs=$JAVA_ENDORSED_DIRS -Dexist.home=$EXIST_HOME -Djavax.xml.transform.TransformerFactory=org.apache.xalan.processor.TransformerFactoryImpl $JAVA_OPTS"

src/org/exist/validation/XmlLibraryChecker.java:237:               .append(" to the " + "class-path, e.g. in the 'endorsed' folder of "
src/org/exist/validation/XmlLibraryChecker.java:238:                + "the servlet container or in the 'endorsed' folder of the JRE.")