【问题标题】:Maven building working from command prompt, but not from EclipseMaven 构建从命令提示符工作,但不是从 Eclipse
【发布时间】:2016-06-15 04:42:42
【问题描述】:

我在 Eclipse 中发现了这个疯狂的问题。我可以在命令提示符下使用命令“maven clean package”运行 Maven 构建。但是,当我尝试通过右键单击-> 运行为-> Maven 构建在 Eclipse 中构建相同的内容时,在配置中我已添加为“干净包”。它向我抛出了

的错误
The project com.svu.core:cUT:1.0.0-SNAPSHOT (E:\CU-SVN\pom.xml) has 1 error
[ERROR]     Non-resolvable parent POM: Failure to find com.zenmonics.core:epom:pom:1.0.0 in http://repo.maven.apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced and 'parent.relativePath' points at wrong local POM @ line 11, column 10 -> [Help 2]

它在 POM.xml 中有相同的错误,但它是如何从命令提示符而不是从 Eclipse IDE 运行的。因此,我无法在构建路径中获取 Maven 依赖项。

<project xmlns="http://maven.apache.org/POM/4.0.0" x mlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0   http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<!-- <groupId>com.svu.core</groupId>-->
<artifactId>cUT</artifactId>
<version>1.0.0-SNAPSHOT</version>
<name>pom :: cUT</name>
<packaging>pom</packaging>

<parent> <---------- Here it throws error 
    <groupId>com.svu.core</groupId>
    <artifactId>epom</artifactId>
    <version>1.0.0</version>
</parent>

【问题讨论】:

标签: java eclipse maven


【解决方案1】:

您可能在 Eclipse 中使用嵌入式 maven。

您可以尝试使用您在系统上使用的相同 maven 设置。

转到-->

窗口 >> 首选项 >> maven >> 安装

在这里 - 添加一个新的安装并给出 maven 库的 bin 文件夹的路径。

尝试使用这种方法 - 如果您的 maven 命令在命令提示符下工作正常,它应该可以工作。

【讨论】:

    【解决方案2】:

    请检查您的工作区是否存在 maven 存储库..!

    【讨论】:

    • .m2文件夹存在于我的系统c盘下&repository也存在于它下面
    • 我的意思是你的eclipse工作区。!不是你的系统驱动器..!如果你的工作空间中有exits maven仓库,你可以在你的eclipse中构建maven项目
    • 如何检查?
    • 那只是显示 settings.xml 的位置,对吧?在我的项目中也是如此
    【解决方案3】:

    请尝试把你的 pom.xml。您的错误表明问题出在pom.xml @ line 11, column 10

    问题是在您当前的 pom 中未检测到 parent pom。试试下面的

    <project>
    
      <parent>
        <groupId>com.svu.core</groupId>
        <artifactId>epom</artifactId>
        <version>1.0.0</version>
      </parent>
    
      <modelVersion>4.0.0</modelVersion>
      <groupId>com.svu.core</groupId>         <--- Same group id as your parent
      <artifactId>cUT</artifactId>
    


    参考:http://maven.apache.org/guides/introduction/introduction-to-the-pom.html

    注意:我没有足够的声誉来评论您的问题。

    【讨论】:

    • 更新了 pom.xml 问题
    【解决方案4】:

    当跟随工作时

    cd cUT
    mvn compile
    

    但是不能在 Eclipse 中编译相同的模块。可能您已经更改了 Maven 配置,并且它的 Eclipse 视图不再是最新的。例如,如果您在 Eclipse 外部或在不被视为在项目路径中的位置更改 pom.xml 文件(请参阅您的其他 question),则可能会发生这种情况。

    在 Eclipse 的Project Explorer 中选择模块cUT。按ALT-F5(执行 maven -> 更新项目)。选择项目的所有模块,检查update project configuration from pom.xml 是否已启用,然后单击òk` 进行处理。

    【讨论】:

    • 您能否详细说明“但无法在 Eclipse 中编译相同的模块。可能您更改了 Maven 配置,并且它的 Eclipse 视图不再是最新的。”.. 我'我看不懂
    • 我没有更改配置中的任何内容。.m2 文件夹下缺少我的 settings.xml,这可能是没有获取 maven 依赖项的原因吗?
    • @Syed settings.xml 不是强制性文件。对于另一个问题,请查看我更新的答案。在您的任何pom.xml 中是否引用了com.zenmonics.core?你的父模块epompom.xml 是什么样子的?
    • 对于以后的读者,我指的是 .m2 目录中的settings.xml is not a mandatory file。 ;-)
    【解决方案5】:

    我遇到了同样的问题,一切都在 eclipse Mars 上运行,但我切换到 Eclipse Oxygen,我的所有变量都很好,我到处检查。

    突然间,我进入了 Eclipse 中 Maven 安装的首选项(您指向 Maven 目录的位置),只是去掉了路径末尾的正斜杠,它就起作用了!

    基本上:

    更改 C:\Program Files\apache-maven_3.5.3\

    C:\Program Files\apache-maven_3.5.3

    它成功了!

    【讨论】:

      【解决方案6】:

      从命令行构建和 eclipse 的区别在于变量。喜欢:

      • java 路径,以防你有多个 jdk。命令行将从 java home 中选择,就像在 eclipse 中一样,您可以配置要使用的 jdk。

      • settings.xml 也可以不同。我认为这是你的问题。命令行从源代码目录(如果存在)中选择 settings.xml。此文件包含用于下载所有依赖项的 maven repo url。在 Eclipse 中,您可以配置 settings.xml 的路径。我怀疑与命令行相比,eclipse 中的路径不同。请在eclipse中更改它,它应该可以工作。我遇到了这个问题,这是根本原因。您可以在日志中看到“Failure to find com.zenmonics.core:epo,这表明 repo url 中存在一些问题。

      【讨论】:

        【解决方案7】:

        我已经安装了最新的 maven,并在 windows -> maven -> 安装中添加了我最新的 maven。它开始为我工作。

        【讨论】:

          猜你喜欢
          • 2011-03-02
          • 2019-04-19
          • 2014-06-19
          • 1970-01-01
          • 2018-03-02
          • 1970-01-01
          • 2021-08-20
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多