编译错误:导入xxxx无法解析

时间:2010-06-15 13:55:34

标签: java eclipse

我正在使用Eclipse开发Java项目。该项目使用另一个名为 engine 的项目,我在项目构建路径中添加了该项目。因为我需要在我的一个名为 Window 的项目类中调用名为 House dabo 类,所以我使用了以下代码作为通常:

import ee.asus.kernel.House;

但是编译时出现了以下错误:

Exception in thread "main" java.lang.Error: Unresolved compilation problems: 
The import ee cannot be resolved
House cannot be resolved to a type
House cannot be resolved to a type
House cannot be resolved to a type

at main.ee.asus.GUI.FrameWindow.Window.<init>(Window.java:10)
at main.ee.asus.GUI.StartApplication.main(StartApplication.java:13)

值得指出的是,我的prject和 dabo 项目使用相同的目录/包名称。有没有人知道错误可能在哪里?

5 个答案:

答案 0 :(得分:0)

错误无法解析包名称的第一部分:ee。你确定包装是以ee开头的吗?我看到你的Window类包以main.ee开头,你的引擎项目是否以相同的包结构开始?

答案 1 :(得分:0)

在第二个项目中查找House类,打开它并查看它所在的包。
package xxx.yyy.zzz;文件开头的“House.java”行

然后确保您的Window.java文件(类main.ee.asus.GUI.FrameWindow.Window)中包含“import xxx.yyy.zzz.House;”行。

答案 2 :(得分:0)

当Eclipse与文件系统不同步时,我有时会因缺少类文件而出现奇怪的行为。

您可以尝试刷新所有项目并进行完全重建。

答案 3 :(得分:0)

我遇到了同样的问题。我有一个应用程序A1(平板电脑版应用程序)调用另一个应用程序A2(手机版应用程序)。在通话时,我看到相同的错误消息:

java.lang.Error: Unresolved compilation problems: 
The import xxxxx cannot be resolved
xxxx cannot be resolved to a type
xxxx cannot be resolved to a type
xxxx cannot be resolved to a type

经过一段时间的探索后,我意识到问题是A2根本没有在平板电脑上运行。这很奇怪,因为A2的前一版本在同一平板电脑上运行完美(我已经在船上只运行了1个月)。所以我认为构建配置有问题。

最后,我通过更改Java Build Path的顺序来解决问题。虽然我不知道它为什么会起作用,但希望这会对你的问题有所了解。

答案 4 :(得分:0)

就我而言,这是版本冲突。

我正在使用maven并更新了许多软件包和许多项目的版本。也许反应堆内置了混合,或者传递依赖关系不是最新的,或者是没有版本增量的项目中的更改。但是,通过maven明确重建该项目可以解决问题。

编辑:当我想到它时,它可能也是eclipse自动构建和在命令行上通过maven构建之间的冲突。