【问题标题】:maven dependency - 3 projects and 1 framework project dependency not be includingmaven 依赖项 - 3 个项目和 1 个框架项目依赖项不包括在内
【发布时间】:2017-03-20 18:39:18
【问题描述】:

Eclipse - 霓虹灯 马文 爪哇 原型 - 4 个项目

您好,我生成了一个包含 4 个项目的 maven 原型?

============================================================
 - framework (packaging ejb)
 - bulk (kind of packaging : pom) it has 3 modules.
   - bulk_ear
   - bulk_ejb
   - bulk_web

 - bulke_ear (packaging ear)
 - bulk_ejb  (packaging ejb) - jpa...
 - bulk_web  (packaging war)
===========================================================

我想将 framework.jar 添加为要在 bulk_web 和 bulk_ejb 项目上使用的依赖项

请你帮我做这件事。因为我试过但没有成功

我的尝试:

  1. 我添加了对 bulk 的框架依赖
  2. 我添加了对 bulk_ear 的框架依赖

但是当我安装 Maven 时,framework.jar 没有打包到 ear。

    <dependency>
        <groupId>br.com.xxx</groupId>
        <artifactId>framework</artifactId>
        <version>1.0.0-SNAPSHOT</version>
        <scope>provided</scope>
    </dependency>

【问题讨论】:

    标签: java eclipse maven


    【解决方案1】:

    您的目标“提供”意味着该 jar 是由您手动提供或由包含框架提供的。此外,如果您想将工件与其他库打包,您应该查看 maven 程序集插件。 How to include package.jar with maven-assembly-plugin

    【讨论】:

      【解决方案2】:

      尝试将maven的scope改成compile

      编译意味着您需要 JAR 来编译和运行应用程序。对于 Web 应用程序,例如,JAR 将放置在 WEB-INF/lib 目录中。

      已提供意味着您需要 JAR 进行编译,但在运行时环境已经提供了一个 JAR,因此您不需要将它与您的应用程序打包在一起。对于 Web 应用,这意味着 JAR 文件不会被放置到 WEB-INF/lib 目录中。

      【讨论】:

      • 我必须添加什么项目 compile> ?
      • 如果您希望framework.jar 成为ear 的一部分,则将framework 定义为compile 范围
      • 当我在 bulk-ear 中添加编译时,出现编译错误,因为在我的 persistence.xml 中有一个名为 Parameter 的类是在框架项目上创建的
      猜你喜欢
      • 2013-06-22
      • 2023-03-24
      • 2014-08-20
      • 2014-05-25
      • 2018-10-20
      • 2020-12-06
      • 2014-03-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多