创建Glassfish 3域作为ant build的一部分?

时间:2012-01-18 19:22:41

标签: ant glassfish-3

我有一个基于Glassfish 3.1.1的JEE6项目,该项目正在超越“一个开发人员原型”阶段,由团队开发。

团队的每个成员都有自己的本地glassfish服务器。我不希望他们每个人都必须通过管理控制台完成设置JDBC连接池,JMS服务,jdbc安全领域等所有手动步骤,就像我在第一次开发原型时所做的那样。这很容易出错,如果我想改变一些事情,我必须告诉大家该怎么做。我希望它是作为ant构建的一部分完成的,所以它是一键式的,然后如果我必须改变一些东西,我可以告诉他们做一个干净的东西吹掉域然后再运行它。因此,“config-glassfish”会有一个ant任务,它会以某种方式为它们配置域。

尽管进行了广泛的搜索,我似乎无法找到如何最好地完成此任务的分步指南。有人有链接吗?

最好是尝试捕获完全配置的域并将其存储在我们的src存储库中吗?

或者我应该使用ant发出“asadmin”命令来创建和配置域?

3 个答案:

答案 0 :(得分:1)

您可以使用sun-appserv-admin ant任务完成所有这些操作。您可以在此处找到更多信息:http://docs.oracle.com/cd/E19316-01/820-4336/beaev/index.html

答案 1 :(得分:0)

我们在工作中也遇到过这种困难,但只有少数开发人员才会这样做。我真正喜欢的一件事是Glassfish有一个resources.xml的概念,它将涵盖很多配置。我使用它传递连接池配置和JMS队列,它工作得很好,但它可能无法满足您的所有配置需求。该文件的内容几乎是来自domain.xml的片段,我还没有想到它可以做的一切。 http://docs.oracle.com/cd/E19798-01/821-1751/ggoeh/index.html http://javahowto.blogspot.com/2011/02/sample-glassfish-resourcesxml.html

我没有尝试过其他想法,因为resources.xml解决了我的主要难点,但您可以使用domain.xml并解决通过将其复制到另一个开发人员域所带来的任何问题,然后对其进行变量替换。需要它的文件的一部分。这样你就可以让ant创建域,然后用新填充的域覆盖domain.xml。

也许有一种方法可以使用asadmin backup-domain

另一个想法是厨师。 http://wiki.opscode.com/display/chef/Home

答案 2 :(得分:0)

我最终只是将domain.xml放入src存储库,制作一个ant任务将其复制到glassfish目录,并指示其他开发人员在运行该ant任务时,应该确保glassfish没有运行。

这适合我的情况......