web-dev-qa-db-fra.com

Comment spécifier le JDK pour un domaine GlassFish?

J'ai installé GlassFish 2.1.1. J'ai installé un JDK 1.5 et 1.6. Même si ma variable Java_HOME est définie sur la version 1.5 (et que "Java -version" et "javac -version" affichent 1.5), chaque fois que je démarre mon domaine glassfish, il indique toujours en haut du journal qu'il utilise la version 1.6. Comment puis-je contourner cela?

Starting Domain domain2, please wait.
04-May-2012 08:38:47 com.Sun.enterprise.admin.servermgmt.launch.ASLauncher buildCommand
INFO:
C:/Dev/jdk/1.6/1.6.0_19\bin\Java
37
edwardmlyte

Ici vous pouvez trouver comment définir le chemin vers JDK pour Glassfish: http://www.devdaily.com/blog/post/Java/fixing-glassfish-jdk-path-problem-solved

Vérifier

glassfish\config\asenv.bat

où Java est configuré

REM set AS_Java=C:\Program Files\Java\jdk1.6.0_04\jre/..
set AS_Java=C:\Program Files\Java\jdk1.5.0_16
70
dbf

Ajout du contenu réel du lien de dbf afin de garder la solution dans stackoverflow.

Il s'avère que lorsque j'ai installé Glassfish pour la première fois sur mon système Windows, j'avais JDK 6 installé, et récemment j'ai dû rétrograder vers JDK 5 pour compiler du code pour un autre projet.

Apparemment, lorsque Glassfish est installé, il code en dur sa référence à votre emplacement JDK, donc pour résoudre ce problème, j'ai fini par devoir modifier un fichier nommé asenv.bat. Bref, j'ai édité ce fichier:

C:\glassfish\config\asenv.bat:

et j'ai commenté la référence au JDK 6 et ajouté une nouvelle référence au JDK 5, comme ceci:

REM set AS_Java=C:\Program Files\Java\jdk1.6.0_04\jre/..
set AS_Java=C:\Program Files\Java\jdk1.5.0_16

Bien que le chemin ne semble pas être sensible à la casse, j'ai passé des heures à déboguer un problème autour de objet de destination JMS introuvable car la casse de mon chemin de remplacement est incorrecte.

11
edwardmlyte

Je travaille sur un Mac, OSX 10.9. J'ai récemment dû mettre à jour mon JDK vers 1.7 pour certains logiciels VPN. L'application sur laquelle je travaille s'exécute sur JDK 1.6, donc un GlassFish devait fonctionner avec JDK 1.6. Il a fallu une minute pour régler cela, mais voici comment cela s'est passé pour moi. Je travaille avec les NetBeans IDE soit dit en passant.

  1. Mon fichier de configuration GlssFish

    /Applications/NetBeans/glassfish-3.1.2.2/glassfish/config/asenv.conf

  2. Chemin vers JDK 1.6

    /System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home

  3. J'ai ajouté la ligne suivante au bas de mon asenv.conf fichier

    AS_Java=/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home

7
fusion27

Erreur similaire avec Glassfish 4.0 et plusieurs JDK installés:

SEVERE: GlassFish requires JDK 7, you are using JDK version 6.

Il n'y a pas de référence AS_Java dans "C:\glassfish\config\asenv.bat" par défaut. Après avoir ajouté manuellement

set AS_Java=C:\Program Files\Java\jdk1.7.0_25 

ça marche.

5
Andy Mac

J'ai eu le même problème dans mon IntelliJ 17 après avoir ajouté du verre de verre frais 4.1.

J'avais mis mon Java_HOME variable d'environnement comme suit:

echo %Java_HOME%
C:\Java\jdk1.8.0_121\

Puis ouvert %GLASSFISH_HOME%\glassfish\config\asenv.bat

Et juste ajouté et la fin du fichier:

set AS_Java=%Java_HOME%

Puis Glassfish a commencé sans problème.

4
DevDio

Selon le GF Guide d'administration:

Pour une installation JVM valide, les emplacements sont vérifiés dans l'ordre suivant: a. domain.xml (Java-home dans Java-config) b. asenv.conf (définition de AS_Java = "chemin d'accès Java home")

J'ai dû ajouter les deux ces paramètres pour le faire fonctionner. Sinon, "asadmin stop-domain domain1" ne fonctionnerait pas. Je suppose que GF utilise a. Et asadmin utilise b.

(Sous Windows: b. Asenv.bat)

4
Per Lindberg

Dans mon cas, le problème était que la variable Java_HOME a été définie comme jre installé.

Une alternative à la définition de la variable AS_Java consiste à définir la variable d'environnement Java_HOME sur le jdk (c'est-à-dire /usr/local/jdk1.7.0.51).

1
TriMix

MESSAGE D'ERREUR :

..... PWC6199: Erreur de servlet générée: -Source 1.5 ne prend pas en charge l'opérateur diamant (veuillez utiliser -source version 7 ou supérieure pour activer l'opérateur diamant)

Solution

Sur MAC: allez à

  • / Utilisateurs/nom d'utilisateur/GlassFish_Server/glassfish/domaines/domaine2/config
  • ouvrez le fichier default_web.xml
  • trouver le jsp
  • ajouter

    enter image description here

1
Towfik Alrazihi