我们使用本地 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/