Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Eclipse中使用自动添加的导入时,包名称错误_Java_Eclipse - Fatal编程技术网

Java 在Eclipse中使用自动添加的导入时,包名称错误

Java 在Eclipse中使用自动添加的导入时,包名称错误,java,eclipse,Java,Eclipse,我有几个Maven项目转换成一个Eclipse工作区。当我在Eclipse下编辑代码时,我有时使用CTRL+SHIFT+M组合键自动将导入添加到工作区中项目的类中。但不知何故,它们是这样添加的: import src.main.java.com.mycompany; 而我想导入的真实软件包是com.mycompany。 这必须是Eclipse中的一些配置才能修复,但我感到困惑。然而,这个问题很烦人 编辑: 我忘了提到Eclipse文件是使用mvneclipse:Eclipse命令生成的 在Ec

我有几个Maven项目转换成一个Eclipse工作区。当我在Eclipse下编辑代码时,我有时使用CTRL+SHIFT+M组合键自动将导入添加到工作区中项目的类中。但不知何故,它们是这样添加的:

import src.main.java.com.mycompany;
而我想导入的真实软件包是
com.mycompany
。 这必须是Eclipse中的一些配置才能修复,但我感到困惑。然而,这个问题很烦人

编辑:

我忘了提到Eclipse文件是使用
mvneclipse:Eclipse
命令生成的

在Eclipse下,项目似乎配置正确。其源文件夹设置如下:

import src.main.java.com.mycompany;
  • src/test/java
  • src/测试/资源
  • src/main/java
  • src/main/resources

Eclipse下的一切都正常工作,除了按下CTRL+SHIFT+M键的情况,这是因为Eclipse不知道Maven遵循的配置文件结构约定。安装插件并
File>New>Other>Maven项目
对于新项目或现有项目,在
packageexplorer
Maven>上右键单击导入的项目启用依赖项管理
。成功完成后,在PackageExplorer上,您将看到您的项目按照Maven常规文件结构(如
src/main/java
src/main/resources
)进行了很好的收集,
src/test/java
从那时起,您将开始看到您的包结构层次结构,如
com.mysite.myproject..
您的构建路径中有错误的源文件夹,任何东西都能正常工作是一个奇迹


您可以使用maven eclipse插件或M2Eclipse来自动实现这一点,也可以手动修复构建路径来调用您的实际源文件夹,而不是它们的曾祖父母。

Java项目的标准源文件夹是

./src
对于导入的maven项目,只需从构建路径settigs处的源文件夹列表中删除此文件夹。正确的源文件夹是

./src/main/java
日食时

首先删除现有的源文件夹。 -右键单击->菜单->生成路径->从生成路径中删除

然后

右键单击源文件夹。 生成路径->用作源文件夹


您的设置似乎指向源文件夹的父文件夹,因此eclipse将src识别为包。

首先删除它。然后使用右键单击package->build path->configure build path->Source->add Folder将其添加回来,并添加整个/src/main/java树。最后,我刚刚将scr文件夹的名称更改为scr java,这删除了以scr作为根包的包结构。

我已经安装了M2Eclipse,我的所有项目都有“启用依赖项管理”正如b argulies和Andreas_D所指出的,通过右键单击>Java构建路径>源来配置什么是源文件夹,什么不是源文件夹tab@Likasz-如果您使用的是M2Eclipse,只需将导入作为Maven项目就可以正确设置所有内容。如果在包资源管理器中未看到项目上方的M,则此配置不正确。如果是这种情况,右键单击项目并选择Maven->updateprojectconfiguration。这对我来说是一个很好的起点。最后,我在一个现有项目上使用了
updateproject
,该项目由于我在terminalWorks中使用了一些git魔法而中断了。很好,我将/src/main/java和其他路径标记为源文件夹。只有一个条目(带有主项目文件夹路径)错误。谢谢谢谢节省了我的时间。谢谢,我们也可以通过配置构建路径来完成,在源代码中,只需删除现有文件夹并再次添加java文件夹。作为补充说明,有一个Eclipse插件用于处理Maven项目,名为m2eclipse.Thank。简单而有力!。