【问题标题】:Deployment in Jboss fuse using Maven使用 Maven 在 Jboss fuse 中部署
【发布时间】:2016-12-08 07:28:16
【问题描述】:

我在 developer studio 9.0.2 中创建了一个 Fuse 集成项目,我使用 jboss-fuse-karaf-6.3.0 作为运行时容器。

我想使用 Maven 部署这个项目,但无法弄清楚 -

  1. 如何以及在何处为部署提供服务器 URL、用户名和密码?
  2. 项目是否部署到 fabric 或 karaf ?

如果有人可以提供一些指导,将不胜感激。

提前致谢。

【问题讨论】:

  • 你想部署 from Maven 吗?此任务是用于生产还是开发?
  • 感谢 Alessandro。我想将我在开发人员工作室中创建的项目部署到使用 maven 的本地 karaf 服务器。我只是从 POC 开始。最终,这种方法将用于开发环境。我无法弄清楚这种部署将如何通过 Maven 进行。是否有 maven 提供用于部署到 karaf 容器的插件?

标签: maven jbossfuse


【解决方案1】:

该服务器是在本地运行还是在远程运行?

  1. 在本地,您可以简单地在服务器视图中定义服务器,然后使用添加上下文菜单来部署您的项目。

  2. 它被部署到 Karaf

【讨论】:

    【解决方案2】:

    使用 Maven 构建项目时,我使用 osgi:installdev:watch 命令(在 JBoss Fuse 和 vanilla Karaf 中都可用)。以下设置适用于开发机器。

    首先使用 Maven 构建,使用 install 目标,因此工件被安装在本地存储库中。
    然后在你的容器中发出osgi:install(参见JBoss Fuse 文档中的Manual Deployment)命令来安装你的包。大功告成!

    > osgi:install mvn:it.your.package/your-artifact/1.0.0
    

    安装包后,您将看到类似

    的消息

    捆绑 ID:352

    这是安装的包的 ID。发出以下命令:

    > dev:watch 352
    

    观看的网址/ID:
    352

    现在每次使用 Maven 重建时,捆绑包都会自动重新部署。

    如果dev:watch does not reload bundles on JBoss Fuse 6.3.0,请注意一些要更改的设置

    编辑:在您的版本中使用-SNAPSHOT 进行此设置。常规版本可能无法正确重新部署,因为容器看到版本相同,并且可能使用以前加载的类,从而导致类加载问题。

    【讨论】:

    • 感谢 Alessandro 提供如此详细的答案。这很有用。可能是我没有全面解释我的问题,对此我深表歉意。我正在寻找的是仅通过运行 pom 文件进行部署(就像我运行 mvn install 一样,并且项目安装在本地 reop 中)。我无法从 karaf 终端 (> osgi:install mvn:it.your.package/your-artifact/1.0.0) 发出任何命令。这个 pom 将成为自动化过程的一部分,它将构建和部署项目。用户要做的就是 - 运行 pom.xml 。您能否就 POM 中的部署部分的外观提供一些指导?
    • 在 JBoss Fuse deploy/ 目录中复制所有工件的简单部署任务怎么样?捆绑包将自动安装并启动。
    猜你喜欢
    • 1970-01-01
    • 2016-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-28
    • 1970-01-01
    相关资源
    最近更新 更多