将外部.class文件链接到eclipse中的包结构?

时间:2013-12-03 02:41:40

标签: java eclipse package

我有一个位于文件系统某处的类文件。它没有包声明(在默认包中创建)。

现在我想在包中使用该类文件。我在构建路径中添加了类文件夹,但是eclipse找不到它。

package test;

public class Test1{
    public static void main(String[] args){
        ExternalClass.print(); // ExternalClass cannot be resolved.
    }
}

如果我将“Test1”移动到默认文件夹,一切正常:

public class Test1{
    public static void main(String[] args){
        ExternalClass.print();
    }
}

如何在“test”包中使用“ExternalClass”?

2 个答案:

答案 0 :(得分:1)

根据http://mindprod.com/jgloss/import.html 无法在命名包中使用默认包中的类。

在J2SE 1.4之前,您可以使用如下语法从默认包中导入类:

import Unfinished;

不再允许这样做。因此,要从打包的类中访问默认包类,需要将默认包类移动到它自己的包中。

如果您有权访问源代码,则需要进行一些后处理以将文件移动到专用包中,并在其开头添加此“package”指令。

答案 1 :(得分:0)

默认范围将类文件的范围限制为同一目录本身。 要实现您的需要,请执行以下步骤,

  1. 在类中导入外部类,该类与外部类具有相同的目录
  2. 为您导入的课程提供正确的包名称。
  3. 使用此新类调用外部类,并根据您的包名称将其导入程序中的任何位置。