我知道我在问这个非常受欢迎的问题。但我无法找到问题的解决方案。我有一个沙箱,我在其中添加了单元测试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
更新2 :有人可能会发现在库中我已经包含了我可能需要的所有依赖项(至少我不知道还要添加什么)。 Maven依赖项包含洞og-analytics
包:
答案 0 :(得分:0)
我知道这个导入位于og-analytics src / test / java位置,我相信它不会在构建路径中的任何位置列出。
完美地解释您的问题。要导入任何类,您必须在构建路径中包含源,或者包含该类的已编译版本的某个目录。就是这么简单。
答案是:明确项目设置。如果你打算从某个地方使用类,你必须以某种方式使它们可用。否则它将无法工作。在你的情况下:如果你的测试想要使用某个东西 - 那么你应该添加那个"事情"到您的测试项目(您应该避免将仅测试内容放到您的"产品"项目中)。
这就是全部。
答案 1 :(得分:0)
您添加了来源(src
)文件夹 og-analytics/src/main/java
,其中包含*.java
个文件而不是类别bin
或classes
)文件夹包含*.class
个文件(在您的情况下,可能是og-analytics/target/classes
)。
但是,使用添加类文件夹... ,您应该在选项卡 Projects 中添加项目og-analytics
。或者甚至更好,在Maven pom.xml
文件中,像对og-analytics
一样,将依赖项添加到项目og-util
。