Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.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项目中缺少Maven依赖项_Java_Eclipse_Maven - Fatal编程技术网

Java Eclipse项目中缺少Maven依赖项

Java Eclipse项目中缺少Maven依赖项,java,eclipse,maven,Java,Eclipse,Maven,我已经在Eclipse上创建了一个maven项目,但是缺少maven依赖项库,但是当我转到project->properties:Java构建路径时,我可以看到maven依赖项库 因此,因为在我想要生成项目时缺少maven依赖项,所以我成功构建了它,但没有创建任何依赖项。不幸的是,这里没有太多信息,如果可能的话,我建议添加pom.xml文件,以便我们可以查看它来诊断确切的问题 暗中试探一下,如果您不使用jar作为打包工具,eclipse可以将maven依赖项移动到接口中的另一个文件夹中。例如,“

我已经在Eclipse上创建了一个maven项目,但是缺少maven依赖项库,但是当我转到project->properties:Java构建路径时,我可以看到maven依赖项库


因此,因为在我想要生成项目时缺少maven依赖项,所以我成功构建了它,但没有创建任何依赖项。

不幸的是,这里没有太多信息,如果可能的话,我建议添加pom.xml文件,以便我们可以查看它来诊断确切的问题

暗中试探一下,如果您不使用jar作为打包工具,eclipse可以将maven依赖项移动到接口中的另一个文件夹中。例如,“war”包将其maven依赖项移动到“java资源/库”下

通常,生成的项目位于“目标”文件下


这些只是猜测,如果没有额外的信息,我真的无法告诉您任何结论,很抱歉,当您尝试将Java项目转换为Maven项目时,Eclipse有时会删除项目和类路径文件。另外,再次检查是否安装了Maven插件(m2e)。该插件是EclipseJava的默认插件,但不是EclipseEE

如果包含以下Maven引用,请检查“.project”文件

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>sample</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.core.javanature</nature>
        <nature>org.eclipse.m2e.core.maven2Nature</nature>
    </natures>
</projectDescription>

样品
org.eclipse.jdt.core.javabuilder
org.eclipse.m2e.core.maven2Builder
org.eclipse.jdt.core.javanature
org.eclipse.m2e.core.maven2Nature
另外,再次检查您的类路径

<?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 kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5">
        <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 kind="output" path="target/classes"/>
</classpath>

打开项目的上下文菜单->
Maven
->
更新项目…
并选择您的项目。然后Maven将刷新所有内容

如果此项不可用,Eclipse的m2e插件将不会将您的项目识别为Maven项目。如果是这样,请转到上下文菜单->
Configure
->
Maven Nature

还要尝试从命令行构建项目,以确保POM实际工作


如果缺少依赖项,请检查POM(
POM.xml
)并确保它们在其中。要验证依赖项,请打开POM编辑器并选择“依赖项层次结构”选项卡(在底部)以获得概览。

查看您的Maven依赖项是否列在“项目属性->部署程序集”中,其外观应类似于以下内容:

打开eclipse项目中的
.classpath
文件。 插入以下行:

<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
        <attributes>
            <attribute name="maven.pomderived" value="true"/>
        </attributes>
</classpathentry> 

然后,在eclipse上重建您的项目。

Project->Clean/Build

在上下文菜单中将项目转换为Maven项目。这就是我修复它的方法。

还有一件事要尝试:

今天我使用EclipseRad得到了这个结果,当时我有一个专业的特性和方面,并且遵循了上面列出的所有补救步骤

Eclipse只是决定我没有有效的maven依赖项,并且没有在navigator窗口中显示“maven依赖项”元素,即使是作为一个空节点。
将我的one-POM依赖项上的版本更正为它可以找到的版本,使得“Maven-Dependencies”元素神奇地与一个预期的子项一起出现

右键单击该项目。点击“构建项目”。除了重新启动、刷新和其他功能外,它对我也很有效。希望对你有用。让我知道它是否存在。

这只是意味着您的
设置.xml
文件已损坏。只要用有效内容替换该文件,您的问题就解决了。

这是我的pom.xml:4.0.0 CalculatriceAntlr CalculatriceAntlr 0.0.1-SNAPSHOT我想我已经发现了我的问题:在我的pom.xml中没有包含依赖项,我是否需要在pom.xml文件中手动写入并包含它们?否,这些不是你写的。您可以使用Maven pom编辑器将它们添加到pom.xml中。(通常这就是Eclipse打开pom.xml时使用的内容。)此编辑器有五个“视图”,其中一个被标记为“依赖项”。我能够编译此pom(在删除分号后),并在编译后将其创建到“目标”文件夹中,这是mvn安装所需的。尽管jar文件没有出现在eclipse界面中@AaronDiguella的答案是值得研究的,因为我认为它应该解决依赖关系不显示的问题。尝试刷新项目也可能是值得的,因为有时候有些东西没有得到更新。我相信您不应该在Eclipse项目文件中引用Maven repo。在Maven配置中(或在pom.xml中),这是Maven Eclipse插件从中读取的位置。mvn Eclipse:Eclipse在命令行执行cmd的所有其他操作失败时,可以很好地更新依赖项。。。cd Enter,然后执行mvn eclipse:eclipse以更新包资源管理器下显示的Maven依赖项。
mvn eclipse:eclipse
已过时,不应使用。欢迎使用StackOverflow。如果您添加了文件的完整路径和您提到的“有效内容”,您的答案可能会更有用。或者至少是一个类似的例子或参考资料。