问题标签 [jpype]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python-3.x - UcanAccess 检索存储的查询 sql
我正在尝试检索构成 Access 数据库中存储查询的 SQL。
我正在使用 UcanAccess 4.0.2、jaydebeapi 和 ucanaccess 控制台的组合。最终目标是能够在没有用户干预的情况下从 python 脚本执行以下操作。
当 UCanAccess 加载时,它成功加载了查询:
当我运行时,来自 UCanAccess 控制台的查询如下
我得到了查询的预期结果。
即使使用 sysSchema=True 选项(来自这里: http ://www.sqlquery.com/Microsoft_Access_useful_queries.html) ,我也尝试了包括从 python 脚本内部进行的这个可怕的查询:
但是得到一个找不到对象或权限不足的错误。
至此,我已经尝试了 mdbtools 并且可以成功地检索元数据,并从访问中获取数据。我只需要把查询也拿出来。
如果有人能指出我正确的方向,我将不胜感激。Windows 不是一个可行的选择。
干杯,赛斯
python-3.x - JPype 错误:导入 jpype ModuleNotFoundError:没有名为“jpype”的模块
我以正确的方式安装了 JPype,一切都很好,我的安装成功但是当我从命令提示符运行我的 refactor.py 时,我在标题中指出了错误。我希望你能帮助我解决这个问题。我还必须指出我是 python3 的初学者。
这是我的代码:
java - 在 python 中重复运行相同的 java 函数的最佳方法是什么?
我正在做一个项目,需要我在 python 中重复运行一个 java 函数(这就像在 python 中设计一个学习算法但值函数是在 java 中提供的)
那么这种情况下的做法是什么?我应该每次都使用 subprocess.run() 调用 java 函数还是应该使用 Py4J、Jython 或 JPype 之类的东西?使用 subprocess.run() 和其他有什么区别?
效率应该是最关心的问题,因为我需要重复运行相同的java 函数。
python - 使用 jpype 在 Python 中启动 JVM 的困难
我最近一直在使用 jpype 与一些使用 python 的 java 代码集成,并且没有遇到真正的问题。我现在正试图在一个新系统上设置我的堆栈并且遇到了困难。
我正在运行 32 位 Python 3.6.5 和 32 位 oracle Java 1.8 update 171。Python 和 jpype 已使用 conda ( conda create -n venv -c conda-forge python jpype1 arrow
) 安装,并且
jpype.getDefaultJVMPath()
返回预期的路径 ( C:\Program Files (x86)\Java\jre1.8.0_171\bin\client\jvm.dll
),但是会引发异常,说明它找不到模块。下面是 python 控制台的输出。
我在这里错过了什么和/或做错了什么?
java - 使用JPype从python调用自定义java类
尝试使用 jpype 从 python 调用 java 类时获取类未找到异常。以下是版本和路径详细信息:
JPype版本:JPype1-py3
蟒蛇:3.6
爪哇:1.8.0_171
Java 文件路径:/home/neha/Downloads/fontAttributes/PDFFontExtractor.java
Python 文件路径:/home/neha/Downloads/call_java.py
下面是 Python 代码:call_java.py
输出:
python-2.7 - Jpype 在 Windows Python 2.7 上使用 jpype.startJVM 命令崩溃
我们正在尝试通过 Windows Server 2016 上的 Python 2.7.14 通过 JDBC 进行连接。
我们刚刚安装了最新版本的 Python 和 Java。
在 Python 命令行中键入此代码会使 Python 崩溃:
这给出了错误:“python.exe 已停止工作。”
我们如何让 jpype 运行?
python-2.7 - 如何防止 ctypes.CDLL("jvm.dll") 在 Windows Server 2016 上出现“找不到模块”错误?
我们如何让 ctypes.CDLL("jvm.dll") 找不到 dll 并且不给出“找不到模块”错误?
我们已经验证了路径,并且可以通过 jvm.dll 的文件“打开”命令获取它们——但是当给 ctypes 时完全相同的路径会给出“找不到模块”错误。
我们还尝试根据此答案编辑注册表项。
我们还尝试使用 32 位版本的 Java 运行 32 位版本的 Python 以及尝试 64 位版本。
我们正在 Windows Server 2016 上使用 Python 2.7.14。
为什么这会失败,我们还能尝试什么?是否存在阻止 Python 脚本查看 DLL 的东西?
这里有更多背景:
我们试图让 ctypes 工作的原因是因为 jpype 失败并出现相同的错误 - 因此它们似乎与 Python 模块无法查看或访问 DLL 基本相关。
当我们运行以下命令时...
...我们得到“找不到模块”。
然而,我们可以使用打开命令访问该文件。例如,这个调用在 Python 中工作(注意它也适用于上面使用的 x86 路径)以到达 jvm.dll:
但是即使路径指向同一个文件,通过 Jpype 的这个调用也会失败:
Jpype 给出以下错误:
文件“C:\Python27\lib\site-packages\jpype_core.py”,第 70 行,在 startJVM _jpype.startup(jvm, tuple(args), True) RuntimeError: Unable to load DLL [C:\Program Files\Java \jre1.8.0_181\bin\server\jvm.dll],错误 = 找不到指定的模块。在 native\common\include\jp_platform_win32.h:58
我们使用 jpype 的原因是我们试图让 Jaydebeapi 工作以创建到数据库的 JDBC 连接。
我们如何启用 ctypes(可能是 jpype)来查找和使用 jvm.dll?
java - JPype 与 Java 10
有人知道 JPype 是否适用于 Java 10 JRE?
我已经用 Java 8 测试了 JPype,没有任何问题,但我无法将它与 Java 10 结合使用。
我的测试设置:
- Windows 10 64 位
- Python 3.5.2 (Anaconda 4.2.0) 64 位
- 蜘蛛3.3.0
- JPype 0.6.3(通过
pip install
)
我在 Spyder 中执行我的 Python 测试脚本(包含在 Anaconda 包中)。
使用 Java 8 (jre1.8.0_181) 测试成功。
JPype JVM 启动没有任何问题。
使用 Java 10 (jre-10.0.2) 测试失败并出现以下错误:
我确实有德语 Windows 版本,因此“Das angegebene Modul wurde nicht gefunden”部分可能被翻译为“找不到指定的模块”。
我使用这个 Python 代码在 JPype 中启动 JVM:
编辑:添加整个测试脚本
如果我使用 Java 10 部分,它不起作用,但如果我使用 Java 8 部分(当前已评论),它确实有效。
第一个print
命令在这两种情况下都会打印True
。
提前谢谢你,
马库斯
python - python - java.lang.Exception:找不到类 oracle.jdbc.driver.OracleDriver
作为 python 的新手,尝试编写 python 代码以连接到 oracle 数据库而不使用任何 Instant 客户端。我正在使用 jaydebeapi 和 jpype,正如本论坛的其他一些主题中所建议的那样。经过很多障碍,我现在陷入了这个错误。这是代码。
我收到的错误如下
python - 尝试 konlpy,但出现与 jpype 相关的运行时错误
我正在尝试在 Python 3 上使用 konlpy
安装后,然后运行以下(根据文档示例)
我收到以下错误: