Не удается установить python-weka-wrapper / javabridge в Google Colab - PullRequest
0 голосов
/ 17 апреля 2019

Я пытаюсь установить python-weka-wrapper в Google Colab, используя

!pip install python-weka-wrapper

И вижу следующее:

Collecting python-weka-wrapper
  Using cached https://files.pythonhosted.org/packages/2a/41/19c7bc2e177371cc273cc8aa17d66bd3ef9a6192160eecc56566ea31d959/python-weka-wrapper-0.3.15.tar.gz
Collecting javabridge>=1.0.14 (from python-weka-wrapper)
  Using cached https://files.pythonhosted.org/packages/a6/a0/c59bccabed99b1d4ac68166c59c679b375bfca75b78688b52c541b711578/javabridge-1.0.18.tar.gz
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-24j9c0j5/javabridge/

Я успешно проверил / установилвсе необходимые пакеты Python:

  • numpy
  • подушка
  • matplotlib
  • pygraphviz

1 Ответ

0 голосов
/ 05 июля 2019

Я столкнулся с точно такой же ошибкой. Ошибка из-за сбоя установки javabridge (зависимость). В моем случае ошибка была связана с тем, что на моем Google Colab Runtime не было установлено JDK .

Примечание. Хотя папки JDK могут присутствовать на вашем компьютере (и аналогично в Google Colab), это не обязательно означает, что javac присутствует или работает. Обычно на большинстве машин работает JRE, хотя может показаться, что папки JDK присутствуют в каталоге / usr / lib / jvm / . Это то, что смущало меня долгое время. Таким образом, вы должны установить openjdk.

Итак, после правильной установки openjdk и правильной настройки JAVA_HOME, javabridge и python-weka-wrapper3 плавно устанавливаются.

Я суммирую все команды, которые я использовал для установки python-weka-wrapper3 на Google Colab

import os
import sys
sys.path
sys.path.append("/usr/lib/jvm/java-11-openjdk-amd64/bin/")
os.environ["JAVA_HOME"] = "/usr/lib/jvm/java-11-openjdk-amd64/"
!apt-get install build-essential python3-dev
!apt-get install python3-pil python3-pygraphviz
!apt install openjdk-11-jdk
!pip3 install javabridge --no-cache-dir
!pip3 install python-weka-wrapper3 --no-cache-dir

import weka.core.jvm as jvm
jvm.start()

Итак, я надеюсь, что это поможет! Не стесняйтесь задавать мне еще вопросы, связанные с этим.

Также обратите внимание, что при попытке исправить проблему я наткнулся на некоторые сообщения о том, что Oracle JDK может быть необходимым. Полная чушь. weka-wrapper3 отлично работает с openjdk.

Комментарии к этому вопросу помогли мне понять проблему, чтобы устранить ошибку, когда я столкнулся с ней.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...