Не удалось запустить GlassFish 4.0 (Windows) - порт 1527-адрес уже используется

Я новичок в Java EE 7.

У меня есть Netbeans 7.4 с GlassFish 4.0 и Java EE 7. На 64-разрядной машине Windows 8.1 Pro. Я хочу запустить сервер GlassFish 4.0, поэтому я нажал на вкладку "Службы" в Netbeans, а затем в опции "серверы" я щелкнул Правой Кнопкой Мыши GlassFish Server 4.0, а затем нажал кнопку "Пуск".

когда я это сделал, я получил следующее сообщение:"не удалось запустить GlassFish Server 4.0: порт прослушивателя HTTP или HTTPS занят, пока сервер не работает". Я есть также сервер IIS, но я остановил его. После остановки IIS я попытался снова запустить GlassFish, но он показал мне то же сообщение.

также есть окно в Netbeans под названием вывод-Java DB Database Process и он показал мне следующее:

Tue May 06 22:03:11 GMT-05:00 2014 : Security manager installed using the Basic server security policy.
Tue May 06 22:03:11 GMT-05:00 2014 Thread[main,5,main] java.io.FileNotFoundException: D:UsersJuan Jose.netbeans-derbyderby.log (Access is denied)
Tue May 06 22:03:12 GMT-05:00 2014 : Could not listen on port 1527 on host localhost:
 java.net.BindException: Address already in use: JVM_Bind
Tue May 06 22:03:12 GMT-05:00 2014 : Could not listen on port 1527 on host localhost:
 java.net.BindException: Address already in use: JVM_Bind

Я запустил netstat-a в Windows, чтобы увидеть, что происходит с портом 1527, и этот порт находится в режиме прослушивания.

Итак, как я могу узнать, какое приложение или процесс поддерживает 1527 порт?

Спасибо за вашу помощь !!

3 ответов


найти процесс1 чтобы сохранить занятый порт, попробуйте следующую команду:

netstat -ano | find "1527"

это покажет строку с портом и идентификатором процесса. например:

TCP    127.0.0.1:1527         0.0.0.0:0              LISTENING       2268

если у вас есть идентификатор процесса (например,2268), выполните следующую команду для освобождения порта (это убьет процесс):

taskkill /F /PID 2268

теперь попробуйте запустить Glassfish.


на Linux:

lsof -Pnl +M -i6 | grep 1527

выдает:

java    31139     1001   32u  IPv6 114916062      0t0  TCP 127.0.0.1:1527 (LISTEN)

убил с:

kill -9 31139

1 если вы хотите узнать связанную программу, см. как узнать, какая служба использует определенный порт?


Если выше не работает ни для кого pls выполните следующие действия.. Конечно, сработает..

  1. на C:\Program файлы\glassfish-4.1\glassfish\Домены\domain1\config

  2. открыть "домен.xml " в Редакторе xml или u может использовать notepad++

  3. найти "8080"( ниже выделено для ссылки ur)

    порт прослушивателя сети="8080 "протокол=" http-прослушиватель-1" транспорт="ТСР" наименование="в HTTP-слушатель-1" потоке="http из пула потоков" enter image description here

  4. заменить "8080"на любой открытый порт. Если вы не знаете, как узнать открытый порт попробуйте использовать port no "3702", то сохраните файл

  5. теперь запустите проект

после запуска проекта, пожалуйста, обратите внимание на URL

http://localhost:8080/...... должно быть http://localhost:3702/.....

чтобы открыть порты, выполните следующие действия

  1. открыть cmd.exe

  2. Выполнить cmd "netstat-ano"

выберите любой, который вы найдете бесплатно(например, внутри зеленого ящика выше ) enter image description here


Это не ошибка, о которой вам нужно беспокоиться. При запуске GlassFish NetBeans также запустит базу данных JavaDB (aka, Derby), которая по умолчанию прослушивает порт 1527. Когда вы закроете NetBeans, он закроет GlassFish, но не закроет JavaDB. Поэтому, когда вы запускаете NetBeans во второй раз, NetBeans попытается запустить JavaDB снова и потерпит неудачу, потому что он уже работает и слушает порт 1527.

закрыть базу данных, вы можете использовать NetBeans для Службы (вкладка)->базы данных->JavaDB(щелкните правой кнопкой мыши - >остановить сервер. Чтобы выйти из командной строки, используйте $NETBEANS_HOME/glassfish-4.0/javadb/bin/stopNetworkServer, где $NETBEANS_HOME-это каталог верхнего уровня, в котором установлен NetBeans (по крайней мере, на Mac/Linux/Unix).