java - 如果添加了名称模板,为什么 Eclipse 无法识别多模块 Maven 项目的 Java 性质?

标签 java eclipse maven m2eclipse

我有一个 springboot 项目,它被组织为多个模块。我正在使用 Eclipse 2019-06(版本 4.12)和 jdk 1.8 update 131 和 apache maven 3.3.9 版本。

使用 Maven 导入项目时 -> 现有的 Maven 项目 -> 选择所有项目和模块级别的 poms -> 单击完成按钮,导入成功。

我可以将子模块视为单独的项目,可以通过右键单击它们到项目工作区来单独运行它们。使用右键单击 -> 运行方式 -> JUnit 测试成功运行 JUnit 测试。

但是,如果我在导入项目时包含名称模板,则即使我在导入时也选择了所有子 poms,也无法识别子模块。

Java 文件显示空 J,这表明它无法识别 Java 本质。因此,我无法运行 JUnit 测试,并且 ctrl+click 导航到方法或类也不起作用。

在这两种情况下,.project 的内容保持不变:

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>my-springboot-app</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
        <buildCommand>
            <name>org.eclipse.m2e.core.maven2Builder</name>
            <arguments>
            </arguments>
        </buildCommand>
    </buildSpec>
    <natures>
        <nature>org.eclipse.m2e.core.maven2Nature</nature>
    </natures>
</projectDescription>

我按照其他 stackoverflow 线程中的建议尝试了以下步骤:

  1. 手动编辑上述 xml 以添加 Java 自然标签以及 maven。 这没有帮助,因为它开始在项目/包资源管理器中将相应的子项目显示为包而不是模块。
  2. 将项目转换为多面项目。这开始显示更多错误,因为 maven 仍未识别项目的 Java 性质。
  3. 使用 mvn eclipse:clean 或从代码位置删除.project 文件,然后使用 mvn eclipse:eclipse。这只是重新创建了 .project 文件,对成功导入子项目没有帮助。

请注意,当我不导入项目并为其指定名称模板时,Eclipse 会在导入项目时构建项目,否则不会。

如果有人能让我知道这是否是 m2e 插件本身的问题以及我是否应该使用其他插件,那就太好了。

Eclipse 4.12 预装了m2e。我考虑使用名称模板,而不是切换工作空间,这可能需要一些时间,以便在同一个 eclipse 工作空间 中可以看到我的代码的 2-3 种风格。

最佳答案

问题在于自定义名称被用作名称模板。当我使用任何可用选项(例如 [groupid].[artifactid]-version 或仅 [artifactid]-version)时,m2e 成功导入项目。我在早期项目中看到了一些关于导入类解析的错误,但当我关闭工作区中不相关的项目时,这些错误就消失了。

关于java - 如果添加了名称模板,为什么 Eclipse 无法识别多模块 Maven 项目的 Java 性质?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57618633/

相关文章:

java - 快速多次处理大 (GB) 文件 (Java)

java - Netty WriteAndFlush 方法不起作用

java - 在jboss 7.0.2中的同一端口和机器上运行不同的应用程序

java.lang.OutOfMemory错误: Java heap space error during bulk insert to mysql database?

c++ - Eclipse 索引器不工作

php - 如何在 PHP Eclipse 中添加注释?

java - 我是否需要安装 Apache Spark 和/或 Scala 才能运行 jUnit?

Java - 使用 java 1.4 编译 src/main/java 并使用 1.5 编译 src/test/java

java - 运行tomcat时eclipse没有检测到错误但是找不到bean

java - 正确设置工具链后 Maven 构建错误