J'essaie d'installer Elasticsearch 1.1.0 sur OSX Mavericks, mais j'ai les erreurs suivantes lorsque j'essaie de démarrer:
:> ./elasticsearch
Exception in thread "main" Java.lang.NoClassDefFoundError: Could not initialize class org.elasticsearch.Version
at org.elasticsearch.bootstrap.Bootstrap.buildErrorMessage(Bootstrap.Java:252)
at org.elasticsearch.bootstrap.Bootstrap.main(Bootstrap.Java:236)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.Java:32)
Aussi, quand j'exécute la même commande avec -v arg, j'ai cette erreur:
:> ./elasticsearch -v
Exception in thread "main" Java.lang.NoSuchFieldError: LUCENE_36
at org.elasticsearch.Version.<clinit>(Version.Java:42)
Voici mon environnement:
Version java
>: Java -version
Java version "1.8.0"
Java(TM) SE Runtime Environment (build 1.8.0-b132)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b70, mixed mode)
Chemin d'installation (archive téléchargée .tar.gz à partir de la page de téléchargement d'elasticsearch et extraite ici):
/usr/local/elasticsearch-1.1.0
ENV vars:
Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home
CLASSPATH=/usr/local/elasticsearch-1.1.0/lib/*.jar:/usr/local/elasticsearch-1.1.0/lib/sigar/*.jar
enfin, je le fais fonctionner, malheureusement, pas sûr de savoir comment, car j'ai essayé beaucoup de changements :). Mais voici une liste des modifications que j'ai apportées qui peuvent aider:
j'ai enlevé jdk et jre et réinstallé sur un env propre. http://docs.Oracle.com/javase/8/docs/technotes/guides/install/mac_jdk.html#A1096855
j'ai supprimé tous les répertoires de cache. Je suppose que cela peut être la "cause" de ce que cela fonctionne maintenant
~/Bibliothèque/Caches
/Bibliothèque/Caches
j'ai supprimé CLASSPATH env var.
Les envs ES_PATH et ES_HOME ne sont pas configurés non plus, mais je pense que ce n'est pas si important.
Remarque: maintenant cela fonctionne aussi si j'installe avec brassage.
Merci.
Vous devriez vraiment envisager d'utiliser infusion . C'est un excellent outil qui prend en charge les dépendances, le contrôle de version et bien plus encore.
Pour installer Elasticsearch à l'aide de brasser, il suffit de:
brew update
brew install elasticsearch
Boom! Terminé.
Suivez ensuite les instructions d’Elasticsearch:
Pour lancer launchd Elasticsearch au moment de la connexion:
ln -sfv /usr/local/opt/elasticsearch/*.plist ~/Library/LaunchAgents
Ensuite, pour charger Elasticsearch maintenant:
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.elasticsearch.plist
Ou, si vous ne voulez pas/n'avez pas besoin de launchctl, vous pouvez simplement lancer:
elasticsearch
Comme il n’existe pas de très bonnes instructions pour "l’installer" sur un Mac:
Java_HOME
variable d'environnement.bin/elasticsearch
du répertoire extrait.Télécharger Java
N'utilisez le JRE que si vous n'écrivez pas de code sur le même ordinateur.
Je suppose que vous obtenez le dernier JDK, qui est actuellement le JDK 8 (comme vous semblez l’avoir, et que j’ai installé l’utilisation de ma machine).
Téléchargez et extrayez Elasticsearch et extrayez-le dans un répertoire.
mkdir -p ~/dev/elasticsearch
Déplacez éventuellement le fichier téléchargé vers cet emplacement:
mv Downloads/elasticsearch* ~/dev/elasticsearch
Extrayez le fichier téléchargé:
cd ~/dev/elasticsearch
_ (si vous l'avez déplacé à l'étape 2)
Si c'est le zip, alors unzip elasticsearch-1.1.0.Zip
_ (ou si vous ne voulez pas que cd
dans le répertoire, lancez simplement unzip elasticsearch-1.1.0.Zip -d ~/dev/elasticsearch
)
Si c'est le goudron, alors tar -xvf elasticsearch-1.1.0.tar.gz
_ (ou si vous ne voulez pas que cd
dans le répertoire, lancez simplement tar -xvf elasticsearch-1.1.0.tar.gz -C ~/dev/elasticsearch
)
Nettoyez (si vous le souhaitez) en supprimant le fichier téléchargé:
rm elasticsearch-1.1.0.*
Ouvrez votre .bash_profile
fichier pour vos paramètres de profil bash:
vi ~/.bash_profile
Dans le fichier, exportez vos variables d’environnement.
export ES_HOME=~/dev/elasticsearch/elasticsearch-1.1.0
export Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home
export PATH=$ES_HOME/bin:$Java_HOME/bin:$PATH
Fermez et rouvrez votre terminal [~ # ~] ou [~ # ~]
Courir source ~/.bash_profile
pour mettre à jour les variables d'environnement
Exécuter Elasticsearch:
elasticsearch
$ES_HOME/bin
au PATH
. Ensuite, allez simplement à ES_PATH
(cd $ES_PATH
, puis bin/elasticsearch
) ou exécuter $ES_PATH/bin/elasticsearch
.Note: Ne configurez pas votre CLASSPATH
sans une très bonne raison. Les scripts le feront pour vous.
Vous devriez essayer d'utiliser brasser avec la dernière mise à jour:
brew update
Et installez Cask Java:
brew cask install Java
Après cela, vous pouvez installer elasticsearch:
brew install elasticsearch
Et pour lancer start elasticsearch, utilisez maintenant:
brew services start elasticsearch
Ou vous pouvez simplement courir:
elasticsearch
Pour mettre à jour ElasticSearch, lancez simplement brew upgrade elasticsearch
Mettre à jour votre java
brew update
brew cask install Java
Installez-le avec homebrew brew install elasticsearch