Java 声明的包测试与预期的包不匹配
因此,我有以下代码:Java 声明的包测试与预期的包不匹配,java,class,package,Java,Class,Package,因此,我有以下代码: package test; import test.Pi; public class Demo { public static int pi = 3; public static void main (String args[]) { System.out.println("Hello!"); Pi.main(args); System.out.println("Hello again!"); }
package test;
import test.Pi;
public class Demo {
public static int pi = 3;
public static void main (String args[]) {
System.out.println("Hello!");
Pi.main(args);
System.out.println("Hello again!");
}
}
但是eclipse在第一行不断抛出一个错误,称“声明的包测试与预期的包不匹配”。
谢谢你的帮助!谢谢 这不是导入的问题-这意味着您试图声明该类(Demo
)的包是test
,但编译器错误表明您将它放在错误的位置-它放在源路径的根目录中,而不是在源根目录下名为test
的目录中
三种可能的变化:
- 不要把它放在
包中;鉴于你问题的标题,不清楚你是否试图这样做。您不需要导入与要声明的类位于同一个包中的任何类测试
- 将
移动到Demo.java
文件夹中(如果还没有)test
- 如果
已在Demo.java
文件夹中,请更改生成配置,使其父目录为源根目录test
Demo
)的包是test
,但编译器错误表明您将它放在错误的位置-它放在源路径的根目录中,而不是在源根目录下名为test
的目录中
三种可能的变化:
- 不要把它放在
包中;鉴于你问题的标题,不清楚你是否试图这样做。您不需要导入与要声明的类位于同一个包中的任何类测试
- 将
移动到Demo.java
文件夹中(如果还没有)test
- 如果
已在Demo.java
文件夹中,请更改生成配置,使其父目录为源根目录test
-并请删除程序包名称前的`。-您收到的错误表明您使用了错误的程序包名称 -请查看,您是否在测试目录中。
-请删除程序包名称前的`。我可能需要澄清——我正试图使用导入函数引用不同程序包中的类。@user1470896:但您不在不同的程序包中,程序包声明说“package test;”@user1470896:但导致错误的不是导入-正如您自己所说,错误在第一行,这是一个
包
声明。抱歉,如果我有点厚,但我正在尝试从另一个包访问它。例如,package1/Demo.java试图访问test/Pi。java@Cowthulhu:那么我建议你问一个新问题,详细说明正在发生的事情。。。包括您的Pi
类的外观。我可能应该澄清一下——我正试图使用导入函数引用不同包中的类。@user1470896:但您不在不同的包中,包声明说“包测试;”@user1470896:但导致错误的不是导入-正如您自己所说,错误在第一行,这是一个包
声明。抱歉,如果我有点厚,但我正在尝试从另一个包访问它。例如,package1/Demo.java试图访问test/Pi。java@Cowthulhu:那么我建议你问一个新问题,详细说明正在发生的事情。。。包括您的Pi
类的外观。