java - m2e如何判断项目是否具有java性质?

标签 java eclipse maven m2e

我正在使用一个特殊的 Maven 插件,它提供了一个自定义的打包类型并定义了一个特殊的生命周期映射。但它仍然是一个类似 Java 的项目,所以我希望 Eclipse(带有 m2e 插件)将项目导入为 Java 项目(.project 文件中具有 java 性质)。但它总是将它作为一个没有 java 性质的简单项目导入。我总是必须手动将 java 特性添加到 .project 文件。

我还尝试保留包装类型“jar”并更改插件以提供“jar”的自定义生命周期映射。但是 m2e 仍然不能将其识别为 java 项目。

那么m2e如何决定是否必须在项目中启用Java特性呢?或者是否有一些特殊的 m2e 配置我可以放入 Maven pom.xml 中以告诉 m2e 我的项目是一个 java 项目?

最佳答案

找到了!无需将包装类型更改为“JAR”。我只需要在生命周期映射中包含 maven-compiler-plugin:

<!DOCTYPE component-set>
<component-set>
  <components>
    <component>
      <role>org.apache.maven.lifecycle.mapping.LifecycleMapping</role>
      <role-hint>custom</role-hint>
      <implementation>org.apache.maven.lifecycle.mapping.DefaultLifecycleMapping</implementation>
      <configuration>
        <phases>
          <compile>
            org.apache.maven.plugins:maven-compiler-plugin:compile,
            my.custom.plugin:compile
          </compile>
        </phases>
      </configuration>
    </component>
  </components>
</component-set>

现在m2e在导入的时候给项目添加了java性质,仍然执行自定义的生命周期。

关于java - m2e如何判断项目是否具有java性质?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11289328/

相关文章:

java - hibernate 强制时间戳以保持/加载为 UTC

java - 设置依赖关系 Maven Java 项目,因此无需运行 maven install 即可立即接受更改

C 编译器问题,多个路径定义/链接

eclipse - 将项目导入 Eclipse 时禁用 Maven 项目构建器

java - 将库导入到java中

java - 将 maven 创建的 jar 文件安装到本地 repo

java - Android 媒体播放器的速度控制

java - 如何在不破坏gradle的情况下更新外部jar文件?

java - JPA多对一: Deleting One to Many side

c++ - 如何在满足条件时在eclipse中停止执行