Java 不同的包导入错误

Java 不同的包导入错误,java,import,package,Java,Import,Package,我有一个java项目,它有两个包“a”和“b”。“A”中的类依赖于“b”中的类,我在“b”中编译了该类(使用javac classname.java),但当我尝试在“A”中编译我的类时,包“b”无法识别。我使用如下行显式导入它: import b.*; 我在网上看到要给出完整的包名,鉴于我的两个包都直接位于src文件夹下,我认为我在import语句中就是这么做的 有人知道如何解决这个问题吗? 提前感谢您可能正在从软件包文件夹本身进行编译。如果是这样,那么您需要退出目录,这样您就可以进入源目录,

我有一个java项目,它有两个包“a”和“b”。“A”中的类依赖于“b”中的类,我在“b”中编译了该类(使用javac classname.java),但当我尝试在“A”中编译我的类时,包“b”无法识别。我使用如下行显式导入它:

import b.*;
我在网上看到要给出完整的包名,鉴于我的两个包都直接位于src文件夹下,我认为我在import语句中就是这么做的

有人知道如何解决这个问题吗?
提前感谢

您可能正在从软件包文件夹本身进行编译。如果是这样,那么您需要退出目录,这样您就可以进入源目录,然后使用以下命令进行编译:

javac a/ClassInA.java

其中“ClassInA”是“a”包中的类的名称。

下面是您可能会遇到的错误

C:\Users\id831496\Desktop\New folder\a>javac ClassA.java
ClassA.java:3: package b does not exist
import b.*;
^
ClassA.java:5: cannot find symbol
symbol  : class ClassB
location: class a.ClassA
ClassB classB = null;
^
2 errors
需要做的是添加一个类路径参数,如下所示

C:\Users\id831496\Desktop\New folder\a>javac -cp ..\b\* ClassA.java

C:\Users\id831496\Desktop\New folder\a>

你到底是如何编译
a
类的?您在哪个文件夹中,确切的命令是什么?我使用与“b”包中的类相同的命令编译“a”包中的类。所以我使用了这样的方法:(我在'a'文件夹-cd a-)javac*.javab包中类的访问级别是什么?@KalyanChavali我不确定我是否理解你的问题,所以我的答案可能无法回答。我的所有类都是公共的,因此可以从任何其他包访问检查是否声明了包(在文件的第一行,定义必须与文件夹结构匹配),然后从项目根目录编译。解决了我的问题,谢谢!我一开始试着这么做,但我做不到,我没有得到15分,我现在只得到了分数(x)