繁体   English   中英

声明的 package “” 与预期的 package “src” 不匹配

[英]The declared package “” does not match the expected package “src”

我在 Atom 编辑器中收到此错误。 我第一次遇到它,现在它显示在我所有的 java 文件中。 我该如何摆脱这个?

在 java 中,包必须匹配目录结构,这适用于 class 文件和源 (java) 文件。 所以,如果你有:

package foo.bar;

public class Baz {}

Then the java file must be at /X/foo/bar/Baz.java and if you want to run it as a class file, it must be at /X/foo/bar/Baz.class , where X is whatever you want并且被认为是“根” - 例如,X 是您将放在类路径中的内容。 不是/X/foo/bar

您遇到了相反的情况:您已经告诉 atom 编辑器,例如/Users/home/Corvo/workspace/CorvosProject是根目录,而您的源文件位于/Users/home/Corvo/workspace/CorvosProject/src/Hello.java 您的Hello.java文件根本不包含 package 语句(这是您稍后想要解决的问题)。 因此,相对于根,该文件位于src/Hello.java ,因此出现错误。 您实际上并不想通过放置package src; 在文件中 - 这没有任何意义,package 名称应该描述产品/库/应用程序以及所有者/作者,因此src完全不合适。 解决方法是告诉 Atom “根源目录”不是/Users/home/Corvo/workspace/CorvosProject ,而是/Users/home/Corvo/workspace/CorvosProject/src

在配置屏幕中四处寻找,或者检查您是否可以右键单击文件夹将它们配置为源根; 如果是这种情况,请取消设置/Users/home/Corvo/workspace/CorvosProject并设置/Users/home/Corvo/workspace/CorvosProject/src (java 项目可以有多个源根文件夹,因此您可以在每个文件夹的基础上设置)。

Atom 在后台使用 eclipse,eclipse 项目可以有任意数量的源根。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM