问题标签 [jcc]
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 - dll在运行jcc时加载失败
运行时:
我得到错误
C:\Python26\python.exe: DLL load failed: The specified module could not be found
我检查了 jcc.dll 的目录在 PATH 中。
任何帮助将不胜感激。
java - 使用 JCC 创建 Java 库的接口后,如何在 Python 脚本中创建 Java 字符串对象?
我有一个 Java 库,我使用 Apache 的 JCC 创建了一个 CPython 接口。当我执行以下操作时,会出现“String”对象,所以我认为 String 对象有一个合适的接口(“p”是我使用“import library as p”加载的库)。
使用我“接口”的这个库从 Python 创建 Java 字符串的方法是什么?互联网上没有答案,JCC 文档太短。
我不想要一个 Python 字符串,而是一个可以传递给接口 Java 方法的 Java 字符串。
java - 使用 JCC 从 Python 覆盖 Java 类。那可能吗?
我正在使用 JCC 为 Java 库创建 Python 包装器,并且我需要覆盖 Python 脚本中 Java 类的方法。可能吗?如果可能的话,你怎么能做到这一点?
python - 当别名为同一路径时,如何指定绝对路径 $ /usr/bin/python 与 $ python 有不同的结果?
我正在尝试make
具有所需依赖项 JCC 的 PyLucene。(JCC 是一个从 Python 调用 Java 的代码生成器。)
注意:操作系统为 Mac OS X 10.7.4。
包含的 make 脚本运行:
输出:
但运行以下是成功的:
即使 python 指向 /usr/bin/python:
输出:
当python
别名指向 时/usr/bin/python
,这些结果有何不同?
macos - 在 Mac 上安装 PyLucene
我希望能够在我的 Mac 上使用 pyLucene。这些说明让我绝望地迷失了方向,因为每个设置或制作说明都要求我在它之前做一些事情,而且很难知道从哪里开始以及从哪个窗口开始做什么。
我已经下载了 PyLucene。我想知道的第一件事是我把文件夹放在哪里,因为这对我来说似乎不是不言而喻的。
要使用它,我被告知我需要构建 JCC,它包含在 pylucene 下载中。
说明:
在命令行中,输入:
但要做到这一点,我认为,我需要在正确的位置或将文件夹放在正确的位置,否则我会得到"setup.py" not found
.
您可以在此环境中提供任何帮助(shell 窗口?IDE?)。非常感谢通过第一部分的任何帮助:构建 JCC,然后设置 pylucene。
java - SQL CODE -104(错误)代表什么?
我正在通过 jcc 执行 SQL 查询以运行报告。当我打开程序的错误日志文件并检查 SQL 查询时,一切似乎都很好(没有多余或缺少的括号、逗号等,语法很好)但是当我执行时,我收到了这个错误:
[Report.execute()] DB2 SQL 错误:SQLCODE=-104, SQLSTATE=42601, SQLERRMC=,;ATE IN (1,2,3,10,1) ;, DRIVER=4.12.55
当我研究 SQLCODE 时,我发现这意味着查询中存在非法符号。我可以寻找什么来找到这个非法符号?
这是查询
很抱歉字体很小,但如果你放大 200% 左右,你可以更好地看到查询。
非常感谢 :)
python - SIGSEGV:JCC 库代码中的分段错误
我正在使用 JCC Python-Java 桥,并且在大多数情况下它都可以工作。但是,我收到以下错误:
JRE 版本:7.0_17-b02
Java 虚拟机:Java HotSpot(TM) 客户端虚拟机(23.7-b01 混合模式 linux-x86 )
有问题的框架:
C [_ciasliveschema.so+0x21e75c] boxJObject(_typeobject*, _object*, java::lang::Object*)+0x22c
堆栈转储如下:
堆栈:[0xbfbe5000,0xbfc35000],sp=0xbfc33820,可用空间=314k
本机帧:(J=编译的 Java 代码,j=解释的,Vv=VM 代码,C=本机代码)
C [_ciasliveschema.so+0x21e75c] boxJObject(_typeobject*, _object*, java::lang::Object*)+0x22c
C [_ciasliveschema.so+0x221977] boxObject(_typeobject*, _object*, java::lang::Object*)+0x27
C [_ciasliveschema.so+0x225149] _parseArgs(_object* , unsigned int, char , ...)+0x2f69
C [_ciasliveschema.so+0x17e21c] schema::util::t_IndividualCaster_asMessage (schema::util::t_IndividualCaster*, _object*)+0xac
C [python+0x8bda4] PyEval_EvalFrameEx+0x6494
C [python+0x8ccb1] PyEval_EvalCodeEx+0x871
C [python+0xe0a0c] 文件号@@GLIBC_2.0+0xe0a0c
C [python+0x143b5] PyObject_Call+0x45
C [python+0x1b107] 文件号@@GLIBC_2.0+0x1b107
C [python+0x143b5] PyObject_Call+0x45
C [python+0x84a72] PyEval_CallObjectWithKeywords+0x42
C [python+0x1eec1] PyInstance_New+0x71
C [python+0x143b5] PyObject_Call+0x45
C [python+0x86923] PyEval_EvalFrameEx+0x1013
C [python+0x8b347] PyEval_EvalFrameEx+0x5a37
C [python+0x8ccb1] PyEval_EvalCodeEx+0x871
C [python+0x8cd47] PyEval_EvalCode+0x57
boxJObject 函数的代码如下:
这以以下方式调用:
此外,我还修改了 jcc.cpp:initVM() 方法的以下部分:
如下:
这是为了在发生错误时尝试从 JCC 获取更详细的错误消息,因此这可能是错误的根源(尽管上面的 segfault 错误和堆栈跟踪表明并非如此)。
最后,我目前正在 Python 中调用 initVM() 方法,如下所示:
但是,当我尝试按如下方式调用该方法时(以增加可用内存量):
我收到以下错误:
JRE 版本:7.0_17-b02 Java VM:Java HotSpot(TM) 客户端 VM(23.7-b01 混合模式 linux-x86)有问题的框架:C 0x00000000
和堆栈跟踪:
堆栈:[0xbf6e0000,0xbf8e0000],sp=0xbf8dd580,可用空间=2037k
有什么建议么?
java - 使用 numpy 数组中的 jcc 创建 nd JArray
我有一些我试图从 python 访问的 java 类(不是我写的)。我已经用 JCC 成功编译了它们,并且可以毫无问题地访问这些方法。我可以调用一个需要 numpy 1D 数组(或列表,它们是相同的)的方法,但我不知道如何创建一个 2D 或 3D 的 JArray 来提供给代码。
似乎由于numpy数组是嵌入式列表,它们不能直接转换为JArrays。JCC 文档试图解释如何做到这一点,但它完全晦涩难懂。
http://lucene.apache.org/pylucene/jcc/readme.html
将 obj 转换为 Document 数组
在这两种情况下,obj 的 java 类型必须与它要转换到的数组类型兼容。
使用嵌套数组:
这是一些代码,但由于这还需要一个编译的java类才能工作,我只想让JArrays在1d以上工作。
我还尝试将 JArrays 重新嵌入到 JArrays 中,就像 jcc 文档似乎做的那样,但这似乎也不起作用。
java - 在 JCC 模块中包含系统类
我有一个 java 类,Prime
我已使用以下命令成功地将其“编译”为 python 模块jcc
:
Prime.factorLists
返回一个多维数组;当我从 python 调用它时,我得到 a Jarray
,但它充满了Object
s ,我无法将其视为数组:
返回一维数组的其他方法确实有效:
我想用来java.util.Arrays.toString
将数组转换Objects
为字符串并将它们打印出来,但我不知道如何将它打包到我的 python 模块中。或者,我可以以JArray
某种方式将它们转换为 python 列表或 s 吗?
python - 在 mac 上安装 JCC(pylucene 需要)时遇到问题
我正在密切关注pylucene 的安装指南。我无法通过需要安装 JCC 的第一步。
要安装 JCC,请简要说明 mac 用户需要:
编辑 setup.py 并检查 INCLUDES、CFLAGS、DEBUG_CFLAGS、LFLAGS 和 JAVAC 中的值是否适合您的系统。这些值也将被编译到 JCC 的 config.py 文件中,并且将在 JCC 调用 distutils 或 setuptools 来编译它正在为其生成代码的扩展时使用。
我不确定要编辑什么。我安装了 Java 1.6。当我运行 setup.py (没有任何编辑)时,它给了我错误(我期望这是因为我没有按照指示编辑任何内容):
无法确定 Java JDK 安装在这台机器上的什么位置。请在运行 setup.py 之前将环境变量 JCC_JDK 设置为该位置。
我是一名新手编码员,所以无法找到我应该在 setup.py 中编辑的内容以使其在 Mac 上工作?我尝试将文件路径放入java,但这没有帮助。任何建议将不胜感激,谢谢!