java - 在开发者之间同步 jboss 模块和 jbossdatahome

标签 java maven jboss jboss7.x jboss-arquillian

我们使用本地 jboss 7 实例 ( maven jboss plugin ) 和自定义模块进行本地开发。每个开发人员可以从事多个项目。对于每个项目,每个开发人员都需要有适当的 jboss 模块和 jbossdatahome 文件夹。 每个开发人员都需要这些文件夹的相同路径,因为它们是硬编码在 maven pom(maven-jboss-plugin 配置)中的。

我真的很讨厌这种设置以及随之而来的管理琐事(更改项目时)。

我们如何在每个项目的所有开发人员之间方便地同步模块、jboss 配置和 jbossdatahome?

我最初的想法是将所有内容都放在每个项目的 SVN 文件夹中,但由于模块包含 jar(并且 jboss 实例本身也相当大),我想它很快就会变得太大。

我想要某种可移植 Maven 配置。但还没有找到任何解决方案..

有人有建议吗?

最佳答案

您可以使用 JBoss CLI 编写 JBoss 实例配置的脚本。不过,您需要确保 JAR 文件在某处可用。

如果您创建一个文件,例如module-add.cli 其中包含以下内容:

module add --name=org.mysql --resources=mysql-connector-java-5.1.18-bin.jar --dependencies=javax.api,javax.transaction.api 
/subsystem=datasources/jdbc-driver=mysql:add(driver-module-name=org.mysql,driver-name=mysql,driver-class-name=com.mysql.jdbc.Driver)
/subsystem=datasources/data-source=MySQLDS:add(jndi-name=java:jboss/datasources/MySQLDS, driver-name=mysql, connection-url=jdbc:mysql://localhost:3306/as7development,user-name=root,password=admin)

并且您将所有 JAR 存储在已知存储库中(我过去使用过 Nexus),您可以创建一个简单的 bash 脚本来进行设置,例如:

wget http://url.to.nexus/hosted/jboss/module.jar
/$JBoss-Home/bin/jboss-cli.sh -c --file=module-add.cli

这会将您的 module.jar 下载到您运行脚本的同一目录中。为了保持一致性,您可能更愿意使用所有绝对路径(并使脚本在更少的先决条件下更具可重用性)

它并不完美,但它有效。

您还可以将此方法与类似 Vagrant 的方法结合起来。为您提供一种可预测的方式来配置和配置环境。

CLI 脚本来源:http://www.mastertheboss.com/jboss-server/jboss-script/installing-a-jboss-as-7-module-using-the-cli

关于java - 在开发者之间同步 jboss 模块和 jbossdatahome,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30758488/

相关文章:

java - JSTL 错误 : The absolute uri: http://java. sun.com/jsp/jSTL/core 无法在 web.xml 或随此应用程序部署的 jar 文件中解析

java - java中处理大量异步调用

java - Android 应用程序添加图像后无法启动

java - 如何将smartGWT(表示层)与Spring服务集成?

c++ - 转发 jboss http 请求到 cpp

deployment - 在现有的 JBoss (7.1.x) 中实现 Torquebox (2.3)

java - Maven部署

Java Eclipse : Hibernate Configuration to AnnotationConfiguration does not work and gives the runtime error

java - 如何在 Jenkins 管道中获取 Maven 版本

使用没有标记 "activeByDefault"的默认配置文件激活 Maven 配置文件