maven - tycho 插件 + maven-dependency-plugin : copy dependencies from local projects instead repositories

标签 maven

主要目标:将项目部署为 jar 和 eclipse-plugin

当前状态:项目作为 jar 包构建良好

现在我想创建第二个项目,将 jar 项目包装为 eclipse 插件

  • 使用 tycho-maven-plugin 创建 eclipse-plugin
  • 添加原始项目的jar(具有复制依赖)
  • 添加激活器
  • 从 jar 中导出包
  • 创建正确的 MANIFEST.MF

  • 我尝试使用绑定(bind)到创建资源的复制依赖项来复制 jar。只要在存储库中找到 jar,这就会起作用,但本地项目会被忽略。
    这会导致构建失败,因为找不到 jar。

    是否可以告诉复制依赖项从项目的目标目录中获取 jar?或者我应该使用其他方法而不是使用第谷?

    编辑:

    我用 4 个项目解决了我的问题:
  • 普通项目(这里没什么特别的)
  • 使用 tycho maven 和 copy-dependencies 的包装器项目。
    在编译之前将复制依赖项绑定(bind)到某个目标(例如生成资源)。排除了在 MANIFEST.MF 中设置为依赖项的所有 artefactid。
  • 一个准备项目,它调用普通项目并将其安装到存储库中。这是必需的,因为 tycho-maven-plugin 必须进行验证,并且无法事先调用 exec 插件(至少不容易)。
  • 一个多模块项目,它在包装项目之前调用准备项目。
  • 最佳答案

    使用“mvm install”构建您的本地项目(遗漏了哪个 Artifact )。它将部署在您的本地存储库 ($USER_HOME$/.m2/repositories) 中。之后应该解决此依赖关系。

    或者,如果您有像 Artifactory 或 Nexus 这样的本地公司 maven 存储库,您可以“mvn deploy”。

    关于maven - tycho 插件 + maven-dependency-plugin : copy dependencies from local projects instead repositories,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11670300/

    相关文章:

    java - 有没有办法列出我所有 Maven 依赖项的 Java 版本?

    maven - Spring 休息数据

    maven - 使用 Maven 构建 JavaFX 8

    java - 奇怪的行为覆盖方法。我有一个错误

    java - Spring boot 应用程序无法从控制台以 .jar 形式打开

    java - 如何上传jar到仓库?

    java - 为什么 Tomcat 库文件夹 WEB-INF/lib 是空的?

    java - 为什么我的 Maven 不使用定义的 BOM?

    java - POI 3.8 与 dbunit 2.4.9 不兼容

    eclipse - Maven - 如何处理生成的类