我有一个位于文件系统某处的类文件。它没有包声明(在默认包中创建)。
现在我想在包中使用该类文件。我在构建路径中添加了类文件夹,但是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”?
答案 0 :(得分:1)
根据http://mindprod.com/jgloss/import.html 无法在命名包中使用默认包中的类。
在J2SE 1.4之前,您可以使用如下语法从默认包中导入类:
import Unfinished;
不再允许这样做。因此,要从打包的类中访问默认包类,需要将默认包类移动到它自己的包中。
如果您有权访问源代码,则需要进行一些后处理以将文件移动到专用包中,并在其开头添加此“package”指令。
答案 1 :(得分:0)
默认范围将类文件的范围限制为同一目录本身。 要实现您的需要,请执行以下步骤,