当尝试将测试作为TestNG套件运行时,我会收到一条非常神秘的错误消息,指出TestNG无法启动,因为它引用了一个不存在的项目。我认为我的项目确实存在,我在包浏览器中看到了它!
答案 0 :(得分:19)
事实证明,您必须确保您的项目是Java项目,而不是简单的项目。 检查导航器是否显示与该文件夹关联的蓝色“J”。如果没有,那么您已经创建了一个简单项目。
“您创建的项目似乎不是Java项目。
Eclipse将.java文件自动构建为所有.java文件的.class文件 包含在Java项目中。
创建Java项目 文件>新>项目> Java项目 为项目命名。单击“完成”
在this source深处隐藏了这个答案。
在eclipse中你应该使用Navigator而不是Package explorer,因为navigator正在浏览实际的文件系统,其中package explorer只加载某些东西。在未来,希望人们能够更轻松地找到解决方案。
答案 1 :(得分:16)
我在使用raspberry OS for raspberry pi时遇到了同样的问题。 问题是java项目引用了我之前的一个项目。
我通过执行以下步骤解决了这个问题。
- 转到Project->属性
- 在属性窗口的左侧窗格中,选择“运行/调试设置”。
- 选择“配置”,然后点击“修改”
- 在“Main”选项卡中,将Project替换为当前项目。
- 点击搜索按钮选择“主要课程”(这将是您的班级名称)。
- 现在点击确定。
醇>
答案 2 :(得分:9)
我知道这是一篇很老的帖子,但是当我转向使用MacBook Pro时,我最近才知道这一点。
当我创建一个新的Eclipse工作区并从SCM加载我的所有项目时,由于引用了一个不存在的项目,我得到了这些Ant故障。
解决方案不容易发现,但解决方案很简单: 将Ant运行配置的JRE更改为在与工作区相同的JRE中运行。
您不需要将构建项目更改为Java项目。
答案 3 :(得分:4)
针对同一问题以不同方式解决。
1)转到Project->属性。
2)在属性窗口的左侧窗格中,选择“Project Facets”。
3)然后点击“转换为分面形式”
4)然后选择您的服务器和JDK版本。
申请并关闭。
注意:验证项目和默认IDE JRE是否为同一版本。
答案 4 :(得分:4)
如果您要运行的当前项目中有一个测试类,该类与您已关闭或删除并先前对其进行过单元测试的项目中的测试类相匹配,则此问题将为您显示。
您可能有一个已删除/丢失或关闭的项目的测试用例。 Eclipse将隐藏已删除和已关闭项目的启动配置,但是当您执行“右键单击类”->“运行方式”来调用单元测试时,Eclipse仍会尝试使用它们。
这里的解决方案是取消隐藏问题启动配置,以便您可以删除它或对其进行修改以符合当前项目。
取消隐藏已删除和已关闭项目的启动配置:
这是通过下拉菜单路径-> Eclipse->首选项->“运行/调试”->启动->“启动配置”来完成的 在“启动配置”屏幕中,找到“启动配置过滤器” 部分,然后取消选中前2个复选框: -“已关闭项目中的过滤器配置” -“过滤已删除或丢失的项目中的配置” 点击“应用并关闭”按钮,然后关闭弹出屏幕。
编辑/删除问题配置:
从下拉菜单中打开运行->“运行配置”。在左侧找到并选择(不再隐藏)运行配置。 在此配置中,您可以将项目引用更新为当前项目,也可以完全删除配置。如果删除运行配置,当您尝试在当前类上“运行方式”运行时,eclipse将使用正确的项目设置从头开始创建一个新的配置。
答案 5 :(得分:3)
在我的例子中,运行快捷方式引用了一个旧项目。
只需右键单击我试图运行的项目文件夹,然后选择我的java类就可以解决问题。
然后按下运行按钮再次开始工作。
答案 6 :(得分:1)
如果是现有项目,则必须在项目根文件夹中具有classpath和project文件才能使其成为java项目。
样品:
<!--classpath -->
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" output="target/classes" path="src/main/java">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="src" output="target/test-classes" path="src/test/java">
<attributes>
<attribute name="optional" value="true"/>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry exported="true" kind="con" path="GROOVY_DSL_SUPPORT"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6">
<attributes>
<attribute name="maven.pomderived" value="true"/>
</attributes>
</classpathentry>
<classpathentry kind="output" path="target/classes"/>
<!-- .project -->
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>testProject</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.groovy.core.groovyNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.m2e.core.maven2Nature</nature>
</natures>
答案 7 :(得分:0)
它不一定是Java项目,也可以是Maven。最旧版本的项目可能存在参考问题。请尝试从Eclipse工作区中删除最旧的版本,然后更改参考点。
答案 8 :(得分:0)
就我而言,该错误发生在 Scala项目 中。它已经安装了the eclipse plugin,但尚未使用。
诊断:如果一切顺利,则该项目的scala项目会有一个蓝色的 S 。如果没有,则它带有黄色的PC鼠标(无论如何)。
要修复,您需要
sbt eclipse
在命令行上。 Eclipse最晚在重新启动时将其识别为Scala项目。
答案 9 :(得分:0)
我已解决此问题,请执行以下步骤:
右键单击功能文件>运行配置>检查功能路径和类路径。 它正在上一个项目的道路上。选择当前项目后解决了该问题
答案 10 :(得分:0)
我也遇到了同样的问题,但是只是删除了测试运行器就解决了。 转到文件->属性->运行/调试设置->单击测试运行器并将其删除。在此步骤之后,您的日食将像以前一样开始正常工作。