J'essaie de configurer le serveur Tomcat et j'utilise les instructions d'un site Web qui m'a chargé de
# Execute the Tomcat startup script
./startup.sh
mais quand j'entre la commande ./startup.sh j'obtiens une erreur
Cannot find /Library/Tomcat/Home/bin/setclasspath.sh
mais le setclasspath.sh est là (voir capture d'écran ci-dessous):
Qu'est-ce que je fais mal????
maintenant, je ne peux pas cd to Home (voir capture d'écran ci-dessous):
voici les informations de chemin:
J'ai eu le même problème sur ma machine Mountain Lion et j'utilise cette commande:
$ unset CATALINA_HOME
et après cela, il a résolu mon problème. Cette commande désactive la variable d'environnement CATALINA_HOME
.
il suffit de lancer: $ unset CATALINA_HOME dans Terminal, et cela fonctionne à nouveau.
C'est à cause de l'autorisation, vous pouvez l'exécuter en utilisant root $ Sudo pathtotomcat/bin/./startup.sh
Veuillez réinitialiser le CATALINA_HOME pour qu'il pointe le bon chemin. Cela devrait résoudre le problème. Par exemple; actuellement, il se peut qu’il se trouve dans "/ usr/share/Tomcat6 /" mais vous devez vérifier et pointer jusqu’au répertoire approprié, comme "/usr/share/Tomcat6/Apache-Tomcat-6.0.37/"
Moi aussi j'ai eu un problème similaire et je suis capable de le résoudre en changeant simplement l'autorisation de fichier du dossier Tomcat. Faites-le lire et écrivez pour tout le monde. Et sh startup.sh
commande fonctionnerait bien avec Tomcat/7.0.34
Pour rendre tous les scripts exécutables:
Sudo chmod +x /Library/Tomcat/bin/*.sh
J'espère que cela résoudra aussi votre problème.
Cela se produit presque certainement à cause d'une valeur incorrecte de la variable d'environnement CATALINA_HOME
dans votre Shell actuel. Dans mon cas, par exemple, une installation plus ancienne de Tomcat avait été supprimée et une autre version, mais j'avais oublié de modifier la variable d'environnement définie dans .bash_profile
. Donc, toutes les méthodes suggérées qui suppriment la var fonctionneront. Si vous avez défini CATALINA_HOME
dans .bash_profile
, supprimez-le. unset CATALINA_HOME
fonctionnerait aussi mais s'il est dans le profil, il sera à nouveau défini lorsque vous ouvrirez un nouveau Shell.
Bien que toutes les réponses citées paraissent bien, il est judicieux de connaître la raison principale.
Quelque part dans votre système d'exploitation, un fichier définit des variables d'environnement pour votre système d'exploitation. L'un de ces noms de variables est CATALINA_HOME
, qui pointe vers une adresse ou un chemin. Lorsque vous essayez d'exécuter ./startup.sh
ou catalina.sh run
, cette commande a besoin du CATALINA_HOME
défini par votre système d'exploitation et remplace le CATALINA_HOME
par défaut de la configuration de Tomcat. (Vous avez peut-être utilisé Tomcat et défini cette variable avant et vous l'oubliez maintenant)
La solution principale consiste donc à éditer ce fichier spécial et cela dépend vraiment du système d'exploitation. Dans mon cas, Fedora
, deux fichiers sont candidats: l’un est ~/.bashrc
et l’autre est /etc/profile
. Une fois que vous les avez modifiés, vous devez source
ou log out
, puis log in
(le OS X
devrait être dans le fichier /Users/username/.bash_profile
).
bien sûr, la commande unset CATALINA_HOME
fonctionne, mais après avoir fermé et ouvert un nouveau terminal, vous devez à nouveau utiliser cette commande en raison de l'actualisation.
La réponse de ALi est bonne, mais pour une raison quelconque, j'avais également besoin d'ouvrir .bash_profile et de commenter CATALINA_HOME.