Использование Java Runtime 12 и 8 на сервере Tomcat (Knowage) - PullRequest
0 голосов
/ 19 сентября 2019

Я устанавливаю Knowage в Windows.Но, пытаясь заставить его работать с OpenJDK 12, я обнаружил несколько NoClassDefFoundError относительно классов в javax.xml (это можно решить загрузкой небольших файлов jar) и sun.misc.BASE64Encoder (для этого нет jar-файлов).Вероятно, больше, но те появляются, просто пытаясь войти в систему.Кажется, он отлично работает с Java SE 8.

У меня есть несколько решений:

  1. Оставьте Knowage с собственным Tomcat, работающим под управлением Java SE 8, установите второй Tomcat, работающий под управлением Java12 для любого другого приложения.Но я бы хотел, чтобы у меня не было двух Tomcats, даже если у меня все равно будет внешний прокси-сервер Apache.Кажется расточительным.

  2. Форк Знание, изменение, компиляция, развертывание, обновление, повторное развертывание, повтор.Но я бы хотел избежать дополнительной работы.

  3. Сообщите о проблеме (сделано), подождите, пока другие решат ее.Но я бы хотел избежать неопределенности, не зная, когда это будет решено, если вообще когда-либо.

  4. Возьмите rt.jar из Java SE 8, в которой есть версии этих отсутствующих классов., поместите его в папку tomcat / lib.Я склоняюсь к этому, отсюда и название, по крайней мере, пока не будет изменено знание.Но я не знаю, безопасно ли это.Кажется, работает: я могу войти!Но это сломает Вселенную или вызовет головную боль в будущем?

Не могли бы вы порекомендовать мне то или иное решение?

...