java - 安装 python-bioformats 时 python setup.py Egg_info 失败

标签 java python

我正在 Ubuntu 16.04 上工作,并且我已经安装了 virtualenvs。我在一个环境中并尝试安装 python-bioformats 官方安装说明website只需指示安装为:

pip install python-bioformats

我这样做了,但收到以下错误消息:

(env2) daniel@Caenor:~/Envs$ pip install python-bioformats
Collecting python-bioformats
  Using cached python-bioformats-1.1.0.tar.gz
Collecting javabridge>=1.0 (from python-bioformats)
  Using cached javabridge-1.0.14.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-SUD0_e/javabridge/setup.py", line 375, in <module>
        ext_modules=ext_modules(),
      File "/tmp/pip-build-SUD0_e/javabridge/setup.py", line 93, in ext_modules
        java_home = find_javahome()
      File "/tmp/pip-build-SUD0_e/javabridge/javabridge/locate.py", line 73, in find_javahome
        java_bin = get_out(["bash", "-c", "type -p java"])
      File "/tmp/pip-build-SUD0_e/javabridge/javabridge/locate.py", line 70, in get_out
        raise Exception("Error finding javahome on linux: %s" % cmd)
    Exception: Error finding javahome on linux: ['bash', '-c', 'type -p java']

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-SUD0_e/javabridge/

我认为这意味着我需要 javabridge。我尝试安装,但也收到错误:

(env2) daniel@Caenor:~$ pip install javabridge
Collecting javabridge
  Using cached javabridge-1.0.14.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-KrBfqr/javabridge/setup.py", line 375, in <module>
        ext_modules=ext_modules(),
      File "/tmp/pip-build-KrBfqr/javabridge/setup.py", line 93, in ext_modules
        java_home = find_javahome()
      File "/tmp/pip-build-KrBfqr/javabridge/javabridge/locate.py", line 73, in find_javahome
        java_bin = get_out(["bash", "-c", "type -p java"])
      File "/tmp/pip-build-KrBfqr/javabridge/javabridge/locate.py", line 70, in get_out
        raise Exception("Error finding javahome on linux: %s" % cmd)
    Exception: Error finding javahome on linux: ['bash', '-c', 'type -p java']

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-KrBfqr/javabridge/

来自documentation要安装 javabridge,我需要 numpy(我已经有了)、Java 开发工具包 (JDK) 和 C 编译器。

我已经安装了JPype1(我认为这是JDK) 我尝试安装Javabridge,但又出现错误。

安装 Javabridge 和 python-bioformats 时缺少什么?

最佳答案

问题是您没有安装 Java。您需要在系统上安装 Java。如果您认为它已安装,那么请确保它不在Linux的搜索可执行文件的路径中,并且您需要将Java的路径添加到环境变量PATH中。每当您安装 Java/添加到 Linux 的 PATH 时,然后在命令行上执行 type -p java ,它应该返回 java 可执行文件的路径.

关于java - 安装 python-bioformats 时 python setup.py Egg_info 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43126723/

相关文章:

java - 使用 jsp 表单将字符串发送到 servlet - 在 jsp 中使用 setAttribute 并在 servlet 中使用 getAttribute

java - 将算法从 O(n^3) 优化为 O(n^2)

python - Pandas read_csv 到多个 DataFrame 中

python - Pandas 加入问题 : columns overlap but no suffix specified

java - 如何从php获取json的COUNT(id)值到android

java - 了解具有多个类的多态性和实例化的接口(interface)形式

java - 在 Java + JSF 2.0 中使用 jCrop 裁剪图片

python - Pandas 数据精度

Python-删除字符然后加入字符串

python - 如何在 Python 中重定向标准错误?