【问题标题】:Building/deploying a EJB .jar with its dependencies构建/部署 EJB .jar 及其依赖项
【发布时间】:2015-04-30 09:11:34
【问题描述】:

我是 Java EE 的新手。我使用 Maven、Eclipse 和 jBoss/WildFly。

我有一个war 项目。当我构建项目时,它的所有依赖项都打包在 WEB-INF/libwar 文件中。

现在我正在尝试创建一个ejb 项目(我在pom.xml 中有<packaging>ejb</packaging>)。我想将它部署为一个单独的项目(而不是作为war 的一部分)。当我构建ejb 项目时,Maven 不会在jar 中打包任何依赖项。

如何打包/部署 ejb .jar 及其依赖项

更新:如果可能的话,我想避免将 EJB 打包在 .ear 中。 (我不想再创建一个 Maven 项目)。

【问题讨论】:

  • 如果您使用的是 Java EE,则应将 EJB 打包到 EAR 文件中,该文件还包含 WAR 文件。
  • @khmarbaise 感谢您的回复!我知道我可以将我的EJB .jar 打包成.ear。但我不想创建额外的 Maven 项目 (.ear)。如果可能的话,我想独立部署我的EJB.jar。我的.war 是一个单独的项目,无论如何都将作为单独的应用程序部署。
  • 您在使用远程 ejb 吗?如果不是,您不能在 JEE 中单独部署它......在这种情况下,通常的方法是创建一个包含 ejb、war 和 ear 的多模块构建......
  • @khmarbaise 是的,我使用远程 EJB 接口。
  • @khmarbaise .war 将是一个使用远程 EJB 的客户端。我想将 EJB 打包成.jar。我在pom.xml 中有<packaging>ejb</packaging>,Maven 在构建项目时调用maven-ejb-plugin(我可以在Maven 日志中看到它)。但是 Maven 并没有在.jar 中打包任何依赖项。这是我的问题。

标签: maven jakarta-ee jar jboss ejb


【解决方案1】:

最好的解决方案是将您的项目打包为 ear。但是如果不想使用 ear,maven 组装插件可以帮助您将所有需要的 jar 打包到一个文件中。此解决方案仅适用于“概念证明”变体,不能用于生产模式,例如受许可证限制。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-12
    • 2021-12-25
    • 2017-05-02
    相关资源
    最近更新 更多