Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Eclipse错误:“;进口。。。无法解析”;_Java_Eclipse - Fatal编程技术网

Java Eclipse错误:“;进口。。。无法解析”;

Java Eclipse错误:“;进口。。。无法解析”;,java,eclipse,Java,Eclipse,我知道我在问一个非常受欢迎的问题。但我找不到解决问题的办法。我有一个沙盒,在其中添加了单元测试multicurvebuildingdiscountaudtest.java文件的代码并对其进行了注释 然后我添加了main方法,我可以成功地运行程序(在控制台中打印一些东西) 最后,我取消了multicurvebuildingdiscountaudtest.java文件的代码注释,发现了以下错误: The import com.opengamma.analytics.financial.instrum

我知道我在问一个非常受欢迎的问题。但我找不到解决问题的办法。我有一个沙盒,在其中添加了单元测试
multicurvebuildingdiscountaudtest.java
文件的代码并对其进行了注释

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

最后,我取消了
multicurvebuildingdiscountaudtest.java文件的代码注释,发现了以下错误:

The import com.opengamma.analytics.financial.instrument.index.GeneratorSwapFixedONMaster cannot be resolved.
此外,在守则中:

GeneratorSwapFixedONMaster cannot be resolved
我知道该导入位于
og analytics src/test/java
位置,我相信在构建路径中没有列出该位置。我相信问题在于构建路径选项,特别是像GeneratorSwapFixedONMaster这样的类,它们是专门为测试而创建的。我一直在清理、重建项目、重新安装,并因此更新JRE。我访问了这些和这些问题。 你知道我该怎么做才能纠正下面的错误吗

我对原始
multicurvebuildingdiscountaudtest.java
文件的其他导入也有很多问题

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

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

我知道这个导入位于og analytics src/test/java位置,我相信在构建路径的任何地方都没有列出

完美地解释了你的问题。为了导入任何类,您必须在生成路径中包含源代码,或者在某个目录中包含该类的编译版本。很简单

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


这就是全部。

您将源(
src
)文件夹
og analytics/src/main/java
,其中包含
*.java
文件,而不是类(
bin
classes
)文件夹
*.class
文件(在您的情况下,可能是
og分析/target/classes


但是,您应该在项目选项卡中添加项目
og analytics
。或者更好的是,在Maven
pom.xml
文件中,将依赖项添加到项目
og analytics
,就像您对
og util

所做的那样,它是一个Maven项目吗?您能给出一个例子:在哪个类中导入c无法解析,该类位于何处(在项目的
src/main/java
og analytics
)?缺少的类在何处(在同一项目的
src/test/java
中,在不同的项目中,在JAR或Maven依赖项中,…)亲爱的@howlger,我已经包括了更新。所有项目都在使用Maven。为什么您的MultiCurveBuildingDiscountAudtest单元测试位于
src/main/java
中?测试应该在
src/test/java
中。此外,您不会在其他模块中看到
src/test/java
中的文件,它将在构建期间运行,但e类文件将不在最终的jar中,因此您不能从src/test引用src/main中的类(您只能用另一种方法)。要解决给定的问题,请点击下面的链接亲爱的@GhostCat,我已经更新了这个问题。从第二个屏幕截图中,您可能会看到我正在使用所有需要的库:显式声明的og analytics/src/test,在Maven Dependencies中,我有og analytics和jar-s的其余部分。我在玩howlger和@GhostCat建议以及我在互联网。我不知道发生了什么。我做了太多的改变,我相信更新Maven最终解决了这个问题。