2011-08-19 117 views
1

我有一个我想使用的jar文件(不是Java标准库的一部分)。为什么Jython无法找到我的.jar文件?

我已经把myJavaPackage.jar放到了我的项目目录中,我正在尝试做import myJavaPackage,但我一直在收到ImportError: No module named myJavaPackage.我在做什么错了?

+0

请注意,这不是http://stackoverflow.com/questions/1681849/why-does-jython-refuse-to-find-my-java-package的重复,因为该问题是关于导入在Java标准库中(Swing,准确地说)。 –

回答

3

您需要确保Jython知道要使用pythonpath搜索模块的.jar文件。这将根据您的设置而有所不同,但在PyDev中:

  1. 在包资源管理器(左侧的树)中,右键单击该项目并转到属性。
  2. 在左侧选择“PyDev - PYTHONPATH”。
  3. 点击右侧的“添加zip/jar/egg”按钮。
  4. 使用左侧的目录树浏览到包含jar的文件夹,然后单击右侧.jar文件旁边的复选框,然后单击确定,然后再次确定。

您还应该检查您尝试导入的模块名称是否与jar文件中指定的包名称匹配。请注意,jar文件的名称可能与包的名称不同,特别是如果其中包含多个包。

如果您有.jar的源代码,请打开包含您要使用的代码的.java文件,并在顶部附近查找指定软件包的行。如果您发现一行说像package foo.bar.myJavaPackage;,那么你必须做的

  • 进口它像import foo.bar.myJavaPackage之一,并且将内容像obj = foo.bar.myJavaPackage.someClass,或
  • 进口像from foo.bar import myJavaPackage,并使用内容类似obj = myJavaPackage.someClass ,或
  • 导入它像from foo.bar.myJavaPackage import someClass,并使用它像obj = myClass,但小心使用此方法的名称冲突。
相关问题