在python中使用imagej时导入模块jnius出错

问题描述 投票:1回答:1

我正在尝试将无头imageJ库连接到我的python应用程序。不幸的是,依赖性错误列表无穷无尽,我现在陷入导入错误,涉及导入名为jnius的java包装器。

到目前为止,我已经使用更新的pip安装了:wheel,imagej,cython,imglyb,pyjnius模块。由于“无法确定JDK_HOME”是在两者之间触发的,因此我遵循了将环境变量列表更新到我的路径(用户和系统)的明显规则。在其间,pyjnius报告"Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools"和我安装相同(一个5.33 GB)和另外的“VCForPython27”。

import os
print(os.environ.get('JAVA_HOME'))
print(os.environ.get('JDK_HOME'))

这两个命令给我以下输出:

C:\Program Files\Java\jdk-11.0.2; C:\Program Files\Java\jdk-11.0.2\bin;C:\Program Files\Java\jdk-11.0.2\bin\server

现在我可以在我的代码中导入imageJ,但是当我尝试使用它的第一个函数时

ij = imagej.init('C:\\Users\\Documents\\ImageJ_Fiji\ImageJ-win64.exe')

我得到以下与import scyjava相关的错误:"Unable to import scyjava dependency jnius."当我尝试运行pip install jnius --user时,我得到了同样的错误:“无法确定JDK_HOME'”这似乎令人困惑,因为我成功安装了pyjniuspip install scyjava --user给了我一个输出,所有要求得到满足。

我不再使用conda环境(因为它让我非常困惑),我的python版本是3.7.2,我的操作系统是Windows 10.我使用的编辑器是PyCharm。我从oracle网站安装了最新的JDK和JRE。

参考:qazxsw poi qazxsw poi

python-3.x dependencies imagej pyjnius
1个回答
1
投票

已经在image.sc论坛上讨论了pyimagej的安装,例如Jnius installation bug, "Unable to determine JDK_HOME"

此外,目前在jnius 1.1 import errorin this topicscyjava)和#5#7)有一些公开问题/ PR。

据我所知,在Python中安装pyimagej的推荐方法是使用conda,因为使用#21激活环境将为依赖项设置所需的环境变量。

如有其他问题,我建议询问imagej

© www.soinside.com 2019 - 2024. All rights reserved.