假设我有这样的课程:
包 com。 stackoverflow .hierarchy ;
A类{}
位于〜/ MyProject / src / com / hierarchy
是否可以避免IDE中的A-class编译错误(如 *声明的包“ com。 stackoverflow .hierarchy ”与预期的包“ com.hierarchy ”不匹配*)
我试图在Java Build Path属性Project Properties中搜索一些答案。但我失败了。也许有些人可以帮助这个员工?
答案 0 :(得分:0)
这是Java问题,但不是日食问题。
From 7.2.1 Storing Packages in a File System in The Java Language Specification:
在这个简单的包组织下,实现了 Java平台会将包名称转换为路径名 连接包名称的组件,放置文件名 相邻组件之间的分隔符(目录指示符)。
例如,如果在UNIX系统上使用此简单组织, 其中文件名分隔符是/,包名称:
jag.scrabble.board
将转换为目录名称:
jag/scrabble/board
和
com.sun.sunsoft.DOE
将转换为目录名称:
com/sun/sunsoft/DOE
您的软件包名称应与文件路径名匹配。因此,您应将Class A
的软件包从package com.stackoverflow.hierarchy
更改为package com.hierarchy
或将Class A
放入文件夹/MyProject/src/com/stackoverflow/hierarchy