Я использую Grails 2.3.11 с плагином Tomcat 7.0.54. Моя версия Java - 1.8.0_181.
Когда я пытаюсь запустить приложение Grails с включенным https, запустите
grails run-app --https
Я получаю следующее исключение:
java.lang.ClassNotFoundException: com.ibm.crypto.tools.KeyTool
Я нашел ответ о том, как исправить неисправный код в плагине Tomcat: https://stackoverflow.com/a/44673672/1037864
Однако я не знаю, как заставить мои изменения примениться. Когда я редактирую код в Tomcatserver.groovy, ничего не происходит. Мой измененный код никогда не выполняется.
Затем я обнаружил, что плагин Tomcat представляет собой jar-файл (находится по адресу "C: \ Dev \ myproject \ webapp \ target \ work \ plugins \ tomcat-7.0.54 \ grails-plugin-tomcat-7.0.54". jar "), и этот файл jar не обновляется при сборке проекта.
В моем BuildConfig.groovy написано:
build ":tomcat:7.0.54"
... поэтому я попытался изменить это на:
compile ":tomcat:7.0.54"
Но когда я пытаюсь запустить проект, я получаю еще одну ошибку:
java.lang.NoClassDefFoundError: org / apache / catalina / startup / Tomcat
в java.lang.Class.getDeclaredMethods0 (собственный метод)
в java.lang.Class.privateGetDeclaredMethods (Class.java:2701)
в java.lang.Class.privateGetMethodRecursive (Class.java:3048)
в java.lang.Class.getMethod0 (Class.java:3018)
в java.lang.Class.getMethod (Class.java:1784)
at sun.launcher.LauncherHelper.validateMainClass (LauncherHelper.java:544)
at sun.launcher.LauncherHelper.checkAndLoadMain (LauncherHelper.java:526)
Вызывается: java.lang.ClassNotFoundException: org.apache.catalina.startup.Tomcat
на java.net.URLClassLoader.findClass (URLClassLoader.java:381)
в java.lang.ClassLoader.loadClass (ClassLoader.java:424)
at sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:349)
в java.lang.ClassLoader.loadClass (ClassLoader.java:357)
... еще 7
Ошибка: произошла ошибка JNI, пожалуйста, проверьте вашу установку и попробуйте снова
Полагаю, мне не хватает некоторых зависимостей.
Как правильно внести изменения в Tomcatserver.groovy, а затем заставить его скомпилировать (и заменить jar-файл)?