【问题标题】:Import cannot be resolved in java导入无法在 java 中解析
【发布时间】:2017-05-31 07:29:01
【问题描述】:

我得到:

import com.test.foo.A cannot be resolved 

我使用的 IDE 是 NWDS。

我有一个声明为 public 的 A 类,我有一个声明为 public final 的 B 类。两者都在不同的包中声明。

com.test.foo 中的 A 类

com.test.foo1 中的 B 类

我正在尝试将公共方法从 A 类导入到 B 类,但在 IDE 中出现上述错误。

两者都在不同的项目中。

代码 sn-p 如下:-

package com.test.foo 

public class A {

    public static void method1(){
    ....some code ....
    }

}

-----

package com.test.foo1

import com.test.foo.A // i'm getting error here as import cannot be resolved

public final class B {

    private method2(){

    ...... some code....
     A.method1(); // import cannot be resolved error
    }
}

有什么可以帮忙的吗?

提前感谢您的帮助:)

【问题讨论】:

  • 请包含您遇到import 失败的代码。
  • 他们在同一个项目中吗?如果不同,依赖配置好了吗?
  • @PavanKumar 在不同的项目和依赖已配置。
  • @TimBiegeleisen 代码 sn-p 添加:)
  • A.javaB.java的目录结构是什么?它是否完全遵循包名?

标签: java packages


【解决方案1】:

在您的图像中,您有类 ClassA 而不是 A

所以错误是:

 "import com.test.foo.A cannot be resolved"

你应该导入类ClassA

package com.test.foo1

import com.test.foo.ClassA;

public final class B {

  private method2(){

    //...... some code....
    ClassA.method1(); 
  }
}

【讨论】:

  • 感谢您的帮助 :) 这是我的错误 :( 我分享的屏幕截图只是一个示例,但对于实际代码,在这种情况下,它仍然是“无法解决导入问题”的解决方案是正确的:)
【解决方案2】:

这就像试图通过单击计算机上的“复制”按钮和单击另一台计算机上的“粘贴”按钮来复制文本。很有趣。 :-)

  • 嗯,一般的 Java 方法是构建包含 A 作为 JAR 的项目,并将其用作另一个包含 B 的项目中的库。

  • 或者,如果您使用 Maven 组织项目,您可以导入另一个项目作为依赖项。比如:

?

<project>
   ...
   <dependencies>
      <dependency>
         <groupId>yourgroup</groupId>
         <artifactId>myejbproject</artifactId>
         <version>2.0</version>
         <scope>system</scope>
         <systemPath>path/to/myejbproject.jar</systemPath>
      </dependency>
   </dependencies>
   ...
</project>

【讨论】:

  • @kevin Wang 感谢您的回复,但这不起作用,我们没有使用 MAVEN 构建。而且我已经明确了依赖关系:)
  • @TimBiegeleisen,嗯?你能详细说明为什么不吗?他面临的问题是A类不在类路径中,所以可以解决。
  • 我感觉他在处理自己编写的代码,而不是外部 JAR,因此这意味着代码不会由 Maven 管理。
  • @NeethuShaji,对不起,我不知道您正在使用的 IDE,底线是您可以使用 JAR 方式,如果您需要修改两者中的类,这并不理想项目。也许有人知道 IDE 也知道让它工作的技巧。祝你好运。
  • @KevinWang 我已附上屏幕截图,请您看看并告诉我:)
【解决方案3】:

要解决给定的问题,请点击以下链接*.com/a/48381463/5093657

【讨论】:

    【解决方案4】:

    即使您导入了正确的类但仍然出现此错误,请使用此技巧。

    Remove the import statement and re-import it.

    【讨论】:

      最近更新 更多