web-dev-qa-db-fra.com

Installer Elasticsearch sur OSX Mavericks

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

MISE À JOUR

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:

~/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.

76
Catalin M.

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:

  1. Pour lancer launchd Elasticsearch au moment de la connexion:

    ln -sfv /usr/local/opt/elasticsearch/*.plist ~/Library/LaunchAgents
    
  2. 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
    
214

Comme il n’existe pas de très bonnes instructions pour "l’installer" sur un Mac:

Version courte:

  1. Installer Java (préférez la dernière version prise en charge)
  2. Ensemble Java_HOME variable d'environnement.
  3. Téléchargez la version Elasticsearch (tar ou Zip).
  4. Extrayez Elasticsearch du fichier téléchargé.
  5. Courir bin/elasticsearch du répertoire extrait.

Version longue:

  1. 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).

  2. Téléchargez et extrayez Elasticsearch et extrayez-le dans un répertoire.

    1. Par exemple: mkdir -p ~/dev/elasticsearch
    2. Déplacez éventuellement le fichier téléchargé vers cet emplacement:

      mv Downloads/elasticsearch* ~/dev/elasticsearch

    3. 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)

    4. Nettoyez (si vous le souhaitez) en supprimant le fichier téléchargé:

      rm elasticsearch-1.1.0.*

  3. Ouvrez votre .bash_profile fichier pour vos paramètres de profil bash:

    vi ~/.bash_profile

  4. 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

  5. Exécuter Elasticsearch:

    elasticsearch

    • La manière la plus traditionnelle de le faire est de faire à peu près tout ce qui précède, mais pas ajoutez $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.

28
pickypg
  1. Vous devriez essayer d'utiliser brasser avec la dernière mise à jour:

    brew update
    
  2. Et installez Cask Java:

    brew cask install Java
    
  3. Après cela, vous pouvez installer elasticsearch:

    brew install elasticsearch
    
  4. Et pour lancer start elasticsearch, utilisez maintenant:

    brew services start elasticsearch
    

    Ou vous pouvez simplement courir:

    elasticsearch
    
8
Alexandr

Pour mettre à jour ElasticSearch, lancez simplement brew upgrade elasticsearch

2
Dean

Mettre à jour votre java

brew update
brew cask install Java

Installez-le avec homebrew brew install elasticsearch

1
alytvynov