Lorsque j'exécute mon projet Java avec Netbeans, le message d'erreur suivant s'affiche:
Deployment error:
Starting of Tomcat failed, the server port 8080 is already in use.
See the server log for details.
at org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.deploy(Deployment.Java:166)
at org.netbeans.modules.j2ee.ant.Deploy.execute(Deploy.Java:104)
at org.Apache.tools.ant.UnknownElement.execute(UnknownElement.Java:288)
at Sun.reflect.GeneratedMethodAccessor619.invoke(Unknown Source)
at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:25)
at Java.lang.reflect.Method.invoke(Method.Java:597)
at org.Apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.Java:105)
at org.Apache.tools.ant.Task.perform(Task.Java:348)
at org.Apache.tools.ant.Target.execute(Target.Java:357)
at org.Apache.tools.ant.Target.performTasks(Target.Java:385)
at org.Apache.tools.ant.Project.executeSortedTargets(Project.Java:1329)
at org.Apache.tools.ant.Project.executeTarget(Project.Java:1298)
at org.Apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.Java:41)
at org.Apache.tools.ant.Project.executeTargets(Project.Java:1181)
at org.Apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.Java:277)
at org.Apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.Java:460)
at org.netbeans.core.execution.RunClassThread.run(RunClassThread.Java:151)
Caused by: org.netbeans.modules.j2ee.deployment.impl.ServerException: Starting of Tomcat failed, the server port 8080 is already in use.
at org.netbeans.modules.j2ee.deployment.impl.ServerInstance._start(ServerInstance.Java:1297)
at org.netbeans.modules.j2ee.deployment.impl.ServerInstance.startTarget(ServerInstance.Java:1251)
at org.netbeans.modules.j2ee.deployment.impl.ServerInstance.startTarget(ServerInstance.Java:1062)
at org.netbeans.modules.j2ee.deployment.impl.ServerInstance.start(ServerInstance.Java:939)
at org.netbeans.modules.j2ee.deployment.impl.TargetServer.startTargets(TargetServer.Java:428)
at org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.deploy(Deployment.Java:143)
... 16 more
BUILD FAILED (total time: 4 seconds)
J'ai essayé de changer le port du serveur en 8081 et le port d'arrêt dans tool-> server. Il fonctionne correctement, mais si je lance une opération et lance le projet, il indique " Erreur de déploiement: le démarrage de Tomcat a échoué, le port du serveur 8081 est déjà utilisé "
Quel serait le problème?
commande goto Invite
netstat -aon
pour linux
netstat -tulpn | grep 'your_port_number'
il va vous montrer quelque chose comme
TCP 192.1.200.48:2053 24.43.246.60:443 ESTABLISHED 248
TCP 192.1.200.48:2055 24.43.246.60:443 ESTABLISHED 248
TCP 192.1.200.48:2126 213.146.189.201:12350 ESTABLISHED 1308
TCP 192.1.200.48:3918 192.1.200.2:8073 ESTABLISHED 1504
TCP 192.1.200.48:3975 192.1.200.11:49892 TIME_WAIT 0
TCP 192.1.200.48:3976 192.1.200.11:49892 TIME_WAIT 0
TCP 192.1.200.48:4039 209.85.153.100:80 ESTABLISHED 248
TCP 192.1.200.48:8080 209.85.153.100:80 ESTABLISHED 248
vérifiez quel processus a lié votre port. ici dans l'exemple ci-dessus son 248
maintenant si vous êtes sûr que vous avez besoin de tuer ce processus de feu
Linux:
kill -9 248
Les fenêtres:
taskkill /f /pid 248
ça va tuer ce processus
Si vous êtes derrière un serveur proxy, ce problème peut survenir J'ai eu le même problème et a été résolu par:.
"Peut-être que le message prêt Tomcat a été envoyé au proxy - et n'a jamais atteint l'IDE."
trouvé @: https://netbeans.org/bugzilla/show_bug.cgi?id=231220
J'ai eu le même problème lors de la tentative de déploiement, Tomcat n'a pas pu redémarrer car l'instance de Tomcat était en cours d'exécution. Fermez le IDE et vérifiez le gestionnaire de tâches - arrêtez tous les processus javaw en cours d’exécution qui ont résolu le problème.
Examinez vos processus en cours, il semble que votre instance Tomcat actuelle ne s’est pas arrêtée. Il est toujours en cours d'exécution et NetBeans tente de démarrer une deuxième instance de Tomcat . C'est la raison de votre exception, il vous suffit d'arrêter la première instance ou de déployer votre code sur celle qui est en cours d'exécution.
En modifiant les paramètres du proxy en "no proxy" dans Netbeans, le problème Tomcat a été résolu.
Si sous Linux, vous pouvez tuer les Tomcats existants avec ce script
#/bin/bash
if [ `whoami` != root ]; then
echo "Please run this script as root or using Sudo"
exit
fi
echo
echo "finding proceses that have name Java and established connections status"
echo
echo "Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name"
netstat --tcp --programs | grep "ESTABLISHED" | grep "Java"
echo
echo "finding proceses that use port 8080 or http-alt"
echo
netstat --tcp --programs | grep ':8080\|:http-alt'
echo -n "Do you wish to kill a process listed above?[Y/n]"
read choose
if [ "$choose" = "Y" ] || [ "$choose" = "y" ] || [ -z "$choose" ]
then
echo "enter pid to kill"
read procesId
kill -9 $procesId
fi
echo "done exiting"
exit 0
Supprimez l'instance précédente de Tomcat ou le processus en cours d'exécution sur 8080.
Allez au terminal et faites ceci:
lsof -i :8080
La sortie sera quelque chose comme:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Java 76746 YourName 57u IPv6 0xd2a83c9c1e75 0t0 TCP *:http-alt (LISTEN)
Tuez ce processus en utilisant son PID:
kill 76746
Sélectionnez le projet -> clic droit -> nettoyer et construire puis exécutez à nouveau le projet, résolvez simplement le problème pour moi.
Comme plusieurs processus pourraient lier le même port, par exemple le port 8086, dans ce cas, je dois tuer tous les processus impliqués avec le port avec PID. Cela pourrait être lourd.
Changez votre port par défaut dans [rép_photel_catel_Comcat] /conf/server.xml Find
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
changez le en
<Connector port="8090" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Je l'ai résolu en remplaçant Tomcat 8.5. * Par Tomcat 7.0. * version.
Changez votre adresse de port Tomcat
en 8084
et Shut Down Port
en 8025
. Cela résoudra votre problème.
Dans d'autres cas, les programmes antivirus peuvent causer des problèmes. J'ai eu ce problème avec K7 sécurité totale. Dans mon cas, K7 Firewall bloquait le port 8084. La solution simple consiste à ajouter une exception à Netbeans dans la liste du pare-feu K7.
Pour ce faire, ouvrez K7 et allez à Paramètres -> Paramètres du pare-feu -> sélectionnez l'onglet Applications et trouvez Netbeans.
Sélectionnez Netbeans et cliquez sur le lien edit. Dans l'écran suivant, sélectionnez le bouton radio Accorder un accès réseau complet.
Maintenant, allez sur Netbeans et démarrez le serveur.