Сервер Payara не работает с Netbeans 12.6 и JDK 17
Мы переносим веб-приложения, использующие java 1.7, здесь, в компании. Затем мы решили использовать последнюю стабильную версию JDK 17 и сервер Payara (мы уже используем Glassfish), однако при связывании сервера в NetBeans платформа Java 17 LTS не выбирается в свойствах сервера. Кто-нибудь когда-нибудь испытывал такое?
2 ответа
У меня такая же проблема с NB 12.6, и я ожидал, что команда NB исправит это с NB 13. Но, к сожалению, проблема все еще существует в 13. Кажется, связанные изменения в этом PR не вошли в дистрибутив NB 13.
Покопавшись некоторое время нашел обходной путь.
- Соберите последнюю версию NetBeans из исходного кода, как описано в этой ссылке.
- Извлеките и скопируйте org-netbeans-modules-payara-tooling.jar из встроенного zip -архива в папку /netbeans/enterprise/modules/ в месте установки NB 12/13. (Папка точно во встроенном зипе)
Конечно, другой вариант — использовать NB, скомпилированный из исходников.
Я столкнулся с той же проблемой, что и вы, при добавлении сервера Payara: JDK 17 не предлагался в качестве платформы для Payara, хотя NetBeans нормально работал на JDK 17. Окно платформы Java SE даже явно выдавало мне ошибку , сервер Payara не может быть запущен с JDK 17 (по умолчанию). Выберите другую платформу Java SE. при запуске Payara.
У меня нет настоящего решения, но простой обходной путь — добавить JDK 11 в качестве второй платформы Java в NetBeans ( Tools > Java Platforms > Add Platform... ), а затем вместо этого выбрать JDK 11. Payara отлично работает под JDK 11:
После этого просто зайдите в
http://localhost:4848/
(или любой другой выбранный вами альтернативный порт) после запуска сервера, чтобы убедиться, что Payara работает:
Заметки :
- Вы можете использовать только выпуски LTS для Payara, что в настоящее время означает, что у вас есть только варианты JDK 8, 11 и 17. Дополнительную информацию об этом см. в разделе Почему платформа Payara поддерживает только версии LTS JDK.
- Я выбрал самую последнюю из предложенных версий Payara: 5.2021.9.
- Я не знаю, почему Payara не может быть запущена с использованием JDK 17, даже если сама NetBeans работает на JDK 17, но я подозреваю, что может иметь значение то, что NetBeans 12.6 предлагает только «экспериментальную поддержку» для JDK 17. Вы можете продолжить это путем создания отчета об ошибках NetBeans, хотя сначала вам придется зарегистрироваться.
- К вашему сведению, я вставил ниже содержимое журнала сервера Payara на случай, если у вас все еще есть проблемы:
ИНФОРМАЦИЯ: Создайте класс поставщика пакетов = class com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner. Зарегистрировано com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishRuntime@537969f1 в сервисном реестре. #!## LogManagerService.postConstruct : rootFolder=C:\Payara\glassfish#!## LogManagerService.postConstruct : templateDir=C:\Payara\glassfish\lib\templates#!## LogManagerService.postConstruct : src=C:\Payara\glassfish\lib\templates\logging.properties#!## LogManagerService.postConstruct : dest=C:\Payara\glassfish\domains\domain1\config\logging.properties
Запуск версии Payara: Payara Server 5.2021.9 #badassfish (сборка 878)|#] Файл журнала сервера использует класс Formatter: com.sun.enterprise.server.logging.ODLLogFormatter|#] Зарегистрировано fish.payara.ha.hazelcast.store
, _ #]
Сетевой прослушиватель http-listener-1 запущен через: 4 мс - привязан к [/0.0.0.0:8080]|#] HV000001: Hibernate Validator 6.1.5.Final|#]
Network Listener http-listener-2 запущен через: 1 мс — привязан к [/0.0.0.0:8181]|#] Network Listener admin-listener запущен через: 2 мс — привязан к [/0.0.0.0:4848]|#] Grizzly 2.4.4 запущен через: 5262 мс — привязан к [http-listener-1:8080, http-listener-2:8181,admin-listener:4848]|#] Network Listener iiop-service запущен через: 2 мс — привязан к [/0.0.0.0:3700]|#] Сервер Payara 5.2021.9#badassfish (878) время запуска: Felix (2025 мс), службы запуска (6171 мс), всего (8196 мс)|#] Состояние сетки данных Состояние сетки данных Payara : Версия DG: 4 Имя DG: development Размер DG: 1 Экземпляры: {DataGrid: development Имя: server Lite: false Это: true UUID:ffa0f7cb-6228-45bd-a4a0-21e098f4bef9 Адрес: /192.168.50.15:4900 }|#] Служба уведомлений Payara запущена.|#] Начальная загрузка среды выполнения консоли мониторинга|#] Запуск сбора данных мониторинга для сервера|#] Запуск сбора контрольных данных мониторинга для сервера|#]
Сетевой прослушиватель JMS_PROXY_default_JMS_host запущен через: 2 мс — привязан к [/0.0.0.0:7676]|#] JMXStartupService запустил JMXConnector в службе URL JMXService: jmx:rmi://0.0.0.0:8686/jndi/rmi://0.0.0.0:8686/jmxrmi|#]
Служба GlassFishORBFactory инициализирована.|#] Прослушивание запросов REST в контексте: /management/domain.|#] Пропуск регистрации обитателя для ссылки на службу [org.osgi.service.metatype.MetaTypeProvider] в качестве сервисный объект не может быть получен.|#] Менеджер безопасности Java отключен.|#]
Вход в службу запуска безопасности.|#] Загрузка поставщика политик com.sun.enterprise.security.provider.PolicyWrapper.|#] Службы безопасности запущены успешно.|#] Создан HTTP-прослушиватель http-listener-1 на хосте/порте 0.0 .0.0:8080|#] Создан HTTP-прослушиватель http-listener-2 на хосте/порте 0.0.0.0:8181|#] Создан HTTP-прослушиватель admin-listener на хосте/порте 0.0.0.0:4848|#] Создан виртуальный сервер server|#] Создан виртуальный сервер __asadmin|#] Сервер виртуального сервера загрузил веб-модуль по умолчанию |#] Загрузка приложения __admingui выполнена за 1757 мс|#] Инициализация Mojarra |version.string| для контекста ''|#] Загрузка приложения [__admingui] в [/]|#] Контекстный путь из ServletContext: отличается от пути из пакета: /|#]
Перенаправление на /common/version.jsf|#] Консоль администратора: Инициализация сеанса Атрибуты...|#]ИНФОРМАЦИЯ: Создайте класс поставщика пакетов = class com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner. Зарегистрировано com.sun.enterprise.glassfish.bootstrap.osgi.EmbeddedOSGiGlassFishRuntime@537969f1 в сервисном реестре. #!## LogManagerService.postConstruct : rootFolder=C:\Payara\glassfish#!## LogManagerService.postConstruct : templateDir=C:\Payara\glassfish\lib\templates#!## LogManagerService.postConstruct : src=C:\Payara\glassfish\lib\templates\logging.properties#!## LogManagerService.postConstruct : dest=C:\Payara\glassfish\domains\domain1\config\logging.properties
Запуск версии Payara: Payara Server 5.2021.9 #badassfish (сборка 878)|#] Файл журнала сервера использует класс Formatter: com.sun.enterprise.server.logging.ODLLogFormatter|#] Зарегистрировано fish.payara.ha.hazelcast.store
, _ #]
Сетевой прослушиватель http-listener-1 запущен через: 4 мс - привязан к [/0.0.0.0:8080]|#] HV000001: Hibernate Validator 6.1.5.Final|#]
Network Listener http-listener-2 запущен через: 1 мс — привязан к [/0.0.0.0:8181]|#] Network Listener admin-listener запущен через: 2 мс — привязан к [/0.0.0.0:4848]|#] Grizzly 2.4.4 запущен через: 5262 мс — привязан к [http-listener-1:8080, http-listener-2:8181,admin-listener:4848]|#] Network Listener iiop-service запущен через: 2 мс — привязан к [/0.0.0.0:3700]|#] Сервер Payara 5.2021.9#badassfish (878) время запуска: Felix (2025 мс), службы запуска (6171 мс), всего (8196 мс)|#] Состояние сетки данных Состояние сетки данных Payara : Версия DG: 4 Имя DG: development Размер DG: 1 Экземпляры: {DataGrid: development Имя: server Lite: false Это: true UUID:ffa0f7cb-6228-45bd-a4a0-21e098f4bef9 Адрес: /192.168.50.15:4900 }|#] Служба уведомлений Payara запущена.|#] Начальная загрузка среды выполнения консоли мониторинга|#] Запуск сбора данных мониторинга для сервера|#] Запуск сбора контрольных данных мониторинга для сервера|#]
Сетевой прослушиватель JMS_PROXY_default_JMS_host запущен через: 2 мс — привязан к [/0.0.0.0:7676]|#] JMXStartupService запустил JMXConnector в службе URL JMXService: jmx:rmi://0.0.0.0:8686/jndi/rmi://0.0.0.0:8686/jmxrmi|#]
Служба GlassFishORBFactory инициализирована.|#] Прослушивание запросов REST в контексте: /management/domain.|#] Пропуск регистрации обитателя для ссылки на службу [org.osgi.service.metatype.MetaTypeProvider] в качестве сервисный объект не может быть получен.|#] Менеджер безопасности Java отключен.|#]
Вход в службу запуска безопасности.|#] Загрузка поставщика политик com.sun.enterprise.security.provider.PolicyWrapper.|#] Службы безопасности запущены успешно.|#] Создан HTTP-прослушиватель http-listener-1 на хосте/порте 0.0 .0.0:8080|#] Создан HTTP-прослушиватель http-listener-2 на хосте/порте 0.0.0.0:8181|#] Создан HTTP-прослушиватель admin-listener на хосте/порте 0.0.0.0:4848|#] Создан виртуальный сервер server|#] Создан виртуальный сервер __asadmin|#] Сервер виртуального сервера загрузил веб-модуль по умолчанию |#] Загрузка приложения __admingui выполнена за 1757 мс|#] Инициализация Mojarra |version.string| для контекста ''|#] Загрузка приложения [__admingui] в [/]|#] Контекстный путь из ServletContext: отличается от пути из пакета: /|#]
Перенаправление на /common/version.jsf|#] Консоль администратора: Инициализация сеанса Атрибуты...|#]