J'ai installé Netbeans 11.2 IDE sur mon Mac. Sous Services -> Serveurs, j'ai ajouté GlassFish Server en tant que serveur.
Ensuite, j'ai ouvert un projet maven. Je pourrais le "nettoyer et le construire". Ensuite, je voulais l'exécuter, mais cela a entraîné le message d'erreur suivant:
No suitable Deployment Server is defined for the project or globally.
Je suppose que cela a quelque chose à voir avec ce qui suit: il y a une fenêtre dans Netbeans appelée "Output - Java DB Database Process" et quand j'ai démarré le serveur GlassFish, la fenêtre m'a montré ce message:
Sat Feb 08 18:02:45 CET 2020 : Security manager installed using the Basic server security policy.
Sat Feb 08 18:02:46 CET 2020 : Could not listen on port 1527 on Host localhost: Java.net.BindException: Address already in use (Bind failed)
J'ai utilisé la commande suivante pour vérifier quel processus utilisait le port 1527:
Sudo lsof -n -i :1527 | grep LISTEN
Cela a abouti à la sortie suivante (note: j'ai supprimé le vrai nom d'utilisateur et la vraie adresse IP)
Java 6722 <user> 36u IPv6 <IP Address> 0t0 TCP 127.0.0.1:tlisrv (LISTEN)
Puisqu'il s'agit d'un processus Java processus, je ne veux pas simplement le tuer.
Que devrais-je faire?
P.S .:
La version du serveur GlassFish est 5.1.0, voir Capture d'écran:
P.P.S .: cette question ne m'a pas aidé: NetBeans: aucun serveur de déploiement approprié n'est défini pour le projet ou globalement
P.P.P.S .: le journal du serveur indique, entre autres, ce qui suit:
Context path from ServletContext: differs from path from bundle: /|#]
Voici une capture d'écran du journal:
P.P.P.P.S:
le contenu du fichier nb-configuration.xml est le suivant:
<?xml version="1.0" encoding="UTF-8"?>
<project-shared-configuration>
<properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1">
<org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_j2eeVersion>1.7-web</org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_j2eeVersion>
<org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_deploy_2e_server>gfv3ee6</org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_deploy_2e_server>
</properties>
</project-shared-configuration>
Pour glassfish 5.1, vous devez modifier ces paramètres dans nb-configuration.xml
Essayez de changer de poing gfv3ee6 en gfv5ee8 puis changez 1.7-web à 1.8-web
Pour moi, cette configuration a fonctionné:
<properties xmlns="http://www.netbeans.org/ns/maven-properties-data/1">
<org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_j2eeVersion>1.8-web</org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_j2eeVersion>
<org-netbeans-modules-maven-jaxws.rest_2e_config_2e_type>ide</org-netbeans-modules-maven-jaxws.rest_2e_config_2e_type>
<org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_deploy_2e_server>gfv5ee8</org-netbeans-modules-maven-j2ee.netbeans_2e_hint_2e_deploy_2e_server>
</properties>
Cela devrait résoudre cette erreur:
No suitable Deployment Server is defined for the project or globally.
Pour ce qui est de
Context path from ServletContext: differs from path from bundle: /|#
erreur essayez de fermer (ou de tuer, y compris NetBeans lui-même) tous Java traite et redémarrez NetBeans et exécutez le projet. Il semble que votre projet a été déployé sur une autre instance de glassfish (la version précédente ?).
Je suppose que vous ne devriez pas vous soucier de ces messages :
Sat Feb 08 18:02:45 CET 2020 : Security manager installed using the Basic server security policy.
Sat Feb 08 18:02:46 CET 2020 : Could not listen on port 1527 on Host localhost: Java.net.BindException: Address already in use (Bind failed)
à moins que ce ne soit en effet à cause des instances précédentes de glassfish. Dans un tel cas, arrêtez simplement l'instance précédente ou supprimez-la.