我创建了一个Maven项目,包装类型为“jar”,名为“Y” 我已经完成了“Maven安装”,我可以在我的本地存储库中找到它..
然后,我创建了另一个包装类型为“war”的项目,名为“X”。在这个项目中,我向“Y”jar添加了一个依赖项,如下所示:
<dependency>
<groupId>my.pck</groupId>
<artifactId>Y</artifactId>
<version>0.0.1-SNAPSHOT</version>
<type>jar</type>
</dependency>
我的问题是,当我关闭项目“Y”时,我收到此错误:
Project 'X' is missing required Java project: 'Y'
但是,它并没有说“缺少工件”......在所有情况下,当我尝试部署“X”时,我得到了这个:java.lang.ClassNotFoundException:
我在项目“Y”中拥有的每个类“并用于项目”X“......
答案 0 :(得分:25)
谢谢你@Eldad,你的评论让我发现了问题。
在Eclipse IDE下: 右键单击“X”项目&gt;构建路径&gt;配置构建路径&gt;项目&gt;检查Y&gt;点击“删除”
现在在部署X战时没有错误。
答案 1 :(得分:3)
我过去见过这个错误;您提到了eclipse,因此它可能与将Eclipse项目从一个工作空间移动到另一个工作空间有关。
检查.classpath
和.project
文件,查找无效目录资源的链接;根据需要调整:
<linkedResources>
<link>
<name>.link_to_something</name>
<type>2</type>
<location>C:/Users/user/projects/someproject/plugins</location>
</link>
</linkedResources>
答案 2 :(得分:1)
此错误消息表示您的某个eclipse项目依赖于另一个项目。您尚未设置或未打开的。修改Eclipse构建路径,使其不再需要其他项目(将该依赖项替换为对jarfile或其他所用代码/资源的引用),或者设置该项目。
答案 3 :(得分:1)
好的,如果上述内容不起作用,请尝试以下操作。它对我有用。
故事的道德:定期保存项目的.metadata和.recommenders。它们可能很有用。
问题发生的原因:我将项目Y添加到Project X,然后将其删除。 Eclipse没有正确地完全删除Y并开始抱怨如上所述。
版本和配置:Eclipse Neon。遗产。没有maven等。
什么有用:0)退出eclipse。
1)制作了整个X目录的副本。为了安全起见。
2)删除了以上两个。目录。
3)复制这些目录的旧保存版本以替换已删除的版本。
4)重启Eclipse。它做了一些常规的抱怨。但我做了以下事情:
4.1)清洁 4.2)刷新 4.3)构建所有5)它奏效了。我多次退出并重启Eclipse,以确保问题不再出现。到目前为止一切都很好。