(免责声明:我是Java的新手,并且我已经阅读了相关的SO question。)

我有以下代码:

import org.apache.pdfbox.pdmodel.*;
...
PDFont font = PDType1Font.HELVETICA_BOLD;

但是PDFont类在Eclipse中无法识别。

当我添加以下内容时:
import org.apache.pdfbox.pdmodel.font.PDFont;

提取PDFont类。

假定PDFont类位于第一个以星号结尾的import语句中指定的层次结构下,为什么需要特定的import语句?

此外,如果没有方便的文档,是否有一种方法可以搜索类在库中的位置?

最佳答案

The on demand import declarations are not recursive



您的PDFont类型在包装中

org.apache.pdfbox.pdmodel.font

但是您尝试导入
 import org.apache.pdfbox.pdmodel.*;

软件包org.apache.pdfbox.pdmodel不包含名为PDFont的类型。

因此,您也可以使用
 import org.apache.pdfbox.pdmodel.font.*;



如果该库以.jar的形式发布,则可以将其解压缩并进行搜索。

大多数IDE通常都具有通过其简单名称搜索类型的功能。例如,在Eclipse中,您可以使用CTRL (cmd) + SHIFT + T并键入简单或完全限定的名称进行搜索(如果它在类路径上)。

关于带*不拾取类的Java导入语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27660321/

10-14 11:34