Eclipse错误:“导入...无法解析”

时间:2017-11-29 14:01:00

标签: java eclipse

我知道我在问这个非常受欢迎的问题。但我无法找到问题的解决方案。我有一个沙箱,我在其中添加了单元测试MulticurveBuildingDiscountingDiscountAUDTest.java文件的代码并对其进行了评论。

然后我添加了main方法,我可以成功运行程序(在控制台中打印一些东西)。

最后,我取消注释了MulticurveBuildingDiscountingDiscountAUDTest.java文件的代码,我看到了以下错误:

The import com.opengamma.analytics.financial.instrument.index.GeneratorSwapFixedONMaster cannot be resolved.

进一步在代码中:

GeneratorSwapFixedONMaster cannot be resolved

我知道此导入位于og-analytics src/test/java位置,我认为该位置未在构建路径中的任何位置列出。我认为问题在于构建路径选项,特别是像GeneratorSwapFixedONMaster这样专门为测试创建的类。我一直在玩清洁,重建项目,重新安装,因此更新了JRE。我访问了这些Import *** cannot be resolved [duplicate]和这些Eclipse error: “The import XXX cannot be resolved”个问题。 你知道我该怎么做才能解决以下错误吗?

我对原始MulticurveBuildingDiscountingDiscountAUDTest.java文件中的其他导入也存在很多问题。

更新:#1是我文件的位置。 #2是该项目使用的类的位置。 MulticurveBuildingDiscountingDiscountAUDTest.java文件取自src/test/java

screenshot

更新2 :有人可能会发现在库中我已经包含了我可能需要的所有依赖项(至少我不知道还要添加什么)。 Maven依赖项包含洞og-analytics包:

screenshot 2

2 个答案:

答案 0 :(得分:0)

  

我知道这个导入位于og-analytics src / test / java位置,我相信它不会在构建路径中的任何位置列出。

完美地解释您的问题。要导入任何类,您必须在构建路径中包含源,或者包含该类的已编译版本的某个目录。就是这么简单。

答案是:明确项目设置。如果你打算从某个地方使用类,你必须以某种方式使它们可用。否则它将无法工作。在你的情况下:如果你的测试想要使用某个东西 - 那么你应该添加那个"事情"到您的测试项目(您应该避免将仅测试内容放到您的"产品"项目中)。

这就是全部。

答案 1 :(得分:0)

您添加了来源(src)文件夹 og-analytics/src/main/java,其中包含*.java个文件而不是类别binclasses)文件夹包含*.class个文件(在您的情况下,可能是og-analytics/target/classes)。

但是,使用添加类文件夹... ,您应该在选项卡 Projects 中添加项目og-analytics。或者甚至更好,在Maven pom.xml文件中,像对og-analytics一样,将依赖项添加到项目og-util