Я устанавливаю Knowage в Windows.Но, пытаясь заставить его работать с OpenJDK 12, я обнаружил несколько NoClassDefFoundError относительно классов в javax.xml
(это можно решить загрузкой небольших файлов jar) и sun.misc.BASE64Encoder
(для этого нет jar-файлов).Вероятно, больше, но те появляются, просто пытаясь войти в систему.Кажется, он отлично работает с Java SE 8.
У меня есть несколько решений:
Оставьте Knowage с собственным Tomcat, работающим под управлением Java SE 8, установите второй Tomcat, работающий под управлением Java12 для любого другого приложения.Но я бы хотел, чтобы у меня не было двух Tomcats, даже если у меня все равно будет внешний прокси-сервер Apache.Кажется расточительным.
Форк Знание, изменение, компиляция, развертывание, обновление, повторное развертывание, повтор.Но я бы хотел избежать дополнительной работы.
Сообщите о проблеме (сделано), подождите, пока другие решат ее.Но я бы хотел избежать неопределенности, не зная, когда это будет решено, если вообще когда-либо.
Возьмите rt.jar из Java SE 8, в которой есть версии этих отсутствующих классов., поместите его в папку tomcat / lib.Я склоняюсь к этому, отсюда и название, по крайней мере, пока не будет изменено знание.Но я не знаю, безопасно ли это.Кажется, работает: я могу войти!Но это сломает Вселенную или вызовет головную боль в будущем?
Не могли бы вы порекомендовать мне то или иное решение?