我目前正在使用NetBeans 8.1处理一个旧项目(Java 6),并且在导入方面遇到了问题。
假设我有包A和包B。包A有一个包含一些导入的文件,包B有另一个包含其他导入的文件。我在包B中添加了一个新的Java类,所有的导入都不起作用,错误是The import [class] cannot be resolved
。但是我把同一个Java类移到包A中,所有的导入都起作用了。如果我从包B引用包A中的这个类,它会给予我同样的错误。
有趣的是,这种情况只发生在我进行清理和构建时,IDE不显示任何错误行,并且错误在控制台中以白色色显示,而不是红色。
我也尝试过在包A中创建一个新包,并将文件放在那里,它实际上工作了。所以我假设有一个设置不允许导入工作。是的,我正在使用的导入与Java 6兼容。下面是一些正在使用的导入的示例:
import java.util.concurrent.atomic.AtomicReference;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
import org.apache.log4j.Logger;
更新系统是不可能的,因为它是一个遗留系统,必须保持。还请注意,这是第一次这个项目有新的文件添加到它,所以它可能是一个硬编码的配置从netbeans或其他东西(gwt?),可能会造成这个问题。
有没有其他的测试我可以做,看看问题可能在哪里?也许这是一个常见的问题回到当时?
1条答案
按热度按时间wvt8vs2t1#
所以我已经设法修复了这个问题。基本上这是一个NetBeans问题。我从NetBeans中删除了这个项目,然后重新打开它,导入了它所需的依赖关系,它成功地编译了,没有出现上面提到的错误。
然后,我继续测试,在其他类上使用“坏”的导入,这些类由于某种原因不喜欢新的导入,它们也工作得很好。
所以基本上解决方案似乎是一个更长的方法"关闭它,然后再打开“