![](/img/trans.png)
[英]The declared package “” does not match the expected package “src” in Visual Studio Code
[英]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.