【问题标题】:Jython, TypeError: 'list' object is not callableJython,TypeError:“列表”对象不可调用
【发布时间】:2025-12-27 11:30:06
【问题描述】:

在我的例子中,我试图在 Jython 上导入一个 Java 类。在我的项目中,我使用带有模型驱动开发插件的 Eclipse IDE。我正在尝试在 Eclipse 中导入该类,但我得到了相同的后续错误,但我将我的 java 项目设置为 Pydev 项目并创建一个拥有 .class 文件的 bin 文件夹,我认为这是正确的做法.因此,我开始尝试使用交互式 Jython 在终端上手动导入它,但我得到了相同的跟随错误,顺便说一下,我正在使用这个资源:

import sys
sys.path.append('/home/hudson/eclipse-projects/new/New/bin.jar')

有趣的是,当我尝试使用来自不同项目的另一个 .class 文件时,我可以轻松搞定。

错误:

>>> sys.path.append(' /home/hudson/eclipse-projects/new/New/bin/org/yakindu/sct/runtime/java/newtest/newtest.jar')
>>> import NewTestCycleBasedStatemachine
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named NewTestCycleBasedStatemachine

我一直在尝试从不同的目录导入 .jar,只是为了测试,但仍然无法获取。 首先,我需要 Eclipse 的解决方案,因为它是我需要的插件的必需品。

那么,它会是什么?


将我的 Java 项目设置为 PyDev 项目后,具体步骤是什么?我需要预编译我的项目,将我的项目压缩为 .jar 并添加此文件夹?

我试过这样导入

从 NewTest 导入 CycleWindow

然后得到这个:

sys-package-mgr:处理修改后的jar,'/home/hudson/eclipse-projects/new/New.jar' sys-package-mgr:跳过坏 jar,'/home/hudson/eclipse-projects/new/New.jar' 回溯(最近一次通话最后): 文件“/home/hudson/eclipse-projects/new/Test/src/MainClass.py”,第 1 行,在 从 NewTest 导入 CycleWindow ImportError: 没有名为 NewTest 的模块


我已经尝试过导入修改 pythonpath 等。例如,我可以在我的 Jython 类中导入一个 SWT 类,但不能导入我的项目。我对两者都做同样的事情:

/home/hudson/Downloads/swt.3.7.2-gtk-linux-x86(1)/swt.jar

/home/hudson/eclipse-projects/new/New/bin.jar

我的头撞墙了!

【问题讨论】:

    标签: java eclipse module jython


    【解决方案1】:

    您应该能够配置项目(右键单击项目 > 属性 > PyDev PYTHONPATH)以添加所需的 jars/文件夹,而不是手动向 sys.path 添加东西。

    见:http://pydev.org/manual_101_project_conf2.html

    如果这不能解决问题,请添加有关如何设置 PyDev 配置、如何构建 Java 类以及如何安装 Java 构建路径的更多信息(感谢提供屏幕截图)。

    【讨论】:

      最近更新 更多