我已经将一个现有的maven项目导入到Eclipse中。我试图为JUnit测试设置配置,但我的项目并不是一个可测试的项目。当我手动输入项目名称时,收到的信息是:
指定的项目不是java项目
我还注意到,当我键入代码并试图调用一个方法时,例如"System.out",当我输入句点时,会弹出一条消息,说:
此编译单元不在java项目的构建路径上
此外,当我右键单击项目并导航到"构建路径"时,没有可用的操作。
在这里和其他地方查看了这一点后,我遵循了以下建议,但没有成功:
我已经验证了.project和.classpath文件的存在
我查看了.project文件,并验证了是否包含javanature
我运行过mvn eclipse:eclipse
我右键单击了PackageExplorer>Maven>更新项目配置中的项目
Java没有被列为项目方面,但我不确定我是否应该搞砸它,因为我尝试过点击它,这导致整个项目充满了错误(我认为与构建路径有关,但我记不清了)。删除Java作为一个方面并没有消除错误,我不得不从头开始重新导入项目。
如果这些内容含糊不清,我很抱歉,谢谢你的帮助。
我正在使用m2eclipse。
编辑:只需从我的工作区中删除项目,删除所有.project、.classpath文件和.settings文件夹,然后重新导入,问题就解决了。我不知道为什么第一次不起作用。
我运行过mvn-eclipse:eclipse
我右键单击了中的项目PackageExplorer>Maven>更新项目配置
这两者应该是相互排斥的。使用eclipse:eclipse
从外部管理项目,或者使用m2eclipse
从内部管理项目。不要把它们混在一起。
问题的可能原因:
包装是POM(也许这是多模块项目的根,在这种情况下,您必须导入模块项目)。m2eclipse没有将Java特性添加到POM项目中(eclipse:eclipse,btw)
确保如果您在eclipse中有M2插件,那么您的系统中安装了Maven 2.7以上版本。
那次跑步之后那么mvn eclipse:clean
mvn eclipse:eclipse
。
.classpath
和.project
将在您的项目文件夹中创建。一切都应该好起来。
请访问以下网站。。在项目上单击鼠标右键,转到"属性",然后选择"项目面"。这将把它转换为java/动态web项目以供使用。
我正在使用版本:Indigo Service Release 2版本id:20120216-1857
我还发现,在我安装了Maven插件后,"项目浏览器"-右键单击"我的项目"没有列出选项"Maven"或"配置"。
在阅读以上内容时,我尝试在"包资源管理器"上做同样的操作,令我惊讶的是,它成功了。现在"Project Explorer"也可以工作了!
我遇到了同样的问题。在我的案例中,我查看了一个包含多个(父/子)pom的Maven项目。
如果存储库/分支中的最高级别Maven项目只是管理子pom,那么它可能根本不包含Java定义。您需要将这些子项目作为Eclipse中的一个独立项目打开。
您可以右键单击您的项目->导入->Maven->现有Maven项目->然后选择要更改的子项目。
根据您拥有的Eclipse版本,从Eclipse Marketplace安装m2e和subclipse。然后:
- 打开Eclipse,转到
Window > Open Perspective > Other... > SVN Repository Exploring
- 将您的svn-url添加到svn存储库/代码库中
- 选择一个项目。右键单击并选择"
Checkout
" - 假设您的项目有pom.xml,切换回Java透视图,选择刚刚导入的项目,右键单击并选择
Configure > Convert to Maven Project
现在,它应该被识别为Maven和Java项目(Maven和Java特性将被添加到Eclipse.project文件中)
问题只需从我的工作区中删除项目,删除所有.project、.classpath文件和.settings文件夹,然后重新导入即可解决。我不知道为什么第一次不起作用。谢谢大家的帮助。
右键单击项目-->属性-->maven-->生命周期映射-->检查(跳过maven编译器插件)单击"确定",此时将显示构建路径。nw做了必要的更改
我遇到了类似的情况,但我意识到,由于我试图在父集合中进行更改,您无法找到eclipse intellisense,因为它只是保存项目。尝试使用maven创建的独家项目。
检查pom.xml文件中的包装标签。
当我将pom.xml改为使用时,它起了作用
<packaging>jar</packaging>
确保POM没有任何错误,Eclipse会根据初始构建(自动或手动)检测项目类型。
项目的性质由Eclipse中的.Project文件决定,该文件还向Eclipse指示父源代码和测试文件夹。
按如下方式更新/修改.project文件,使用该文件我们保留了项目的Maven兼容性和Java性质。
.project.xml位于Eclipse项目文件夹下
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>java-cgdk-en</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
在Eclipse 2022-06(4.24.0)中,以上任何一项都不适用于我
https://www.youtube.com/watch?v=aF0xP9SXcrE-如何解决未被识别为maven项目的子模块
希望这能有所帮助。
尝试清理您的eclipse
eclipse.exe -clean
如果不起作用,请尝试安装一个新的eclipse并导入相同的项目
更新:
无需安装新的Eclipse,只需在Eclipse.ini文件中恢复vm args(如果您已经将其更改为)