java使用哪个Maven GlassFish插件?
我一直在尝试通过Maven在GlassFishV3中集成部署java .war
。虽然我发现了一些插件,但它们看起来都不是很活跃:
我从Eskato's Blog中得到了最多的信息,它是2008年3月写的,所以我不知道GlassFish Maven集成的状态如何,也找不到合适的插件来使用。使用Maven GlassFish Plugin我取得了一些成功,但它仍然不能完全满足它所支持的所有目标,这使得一些命令无效
还有其他人能够成功地集成Glassfish V3和Maven吗?如果是这样,您使用了哪些资源来完成它
# 1 楼答案
我在maven glassfish插件上使用glassfish插件。dev.java。net并做了一些代码更改以支持v3。我请求提交者状态并等待确认。希望我能做出改变
# 2 楼答案
你可以用这个:
http://www.hascode.com/2011/09/java-ee-6-development-using-the-maven-embedded-glassfish-plugin/
https://github.com/andrzejsliwa/glassfish-maven-plugin/wiki
http://cargo.codehaus.org/Maven2+plugin
# 3 楼答案
maven glassfish插件和maven embedded glassfish插件各有利弊。主要区别在于后者与嵌入的Glassfish实例一起工作,如其名称所示,即服务器与插件运行在同一个VM中
因此,您不能使用maven embedded glassfish插件将WAR部署到独立的glassfish服务器,您需要使用maven glassfish插件来实现这一点
maven glassfish插件的主要问题是,它与glassfish服务器的交互是有状态的——我找不到一种方法来使用它,以便在任何情况下都能将我的WAR部署到服务器上,无论之前的构建是否成功
glassfish:如果战争已经展开,部署就不起作用。玻璃鱼:如果战争没有展开,重新部署就不起作用。而Maven没有如果其他逻辑
# 4 楼答案
我在博客中讨论了如何配置Maven Embedded GlassFish插件,使其在GlassFish 4.0上正常工作,直到该插件发布新版本
https://blogs.oracle.com/brunoborges/entry/glassfish_4_beta_and_maven
此外,还可以在glassfish资源中配置数据源。并使其正常工作
https://blogs.oracle.com/brunoborges/entry/configure_datasources_for_maven_embedded
对于任何想要使用Maven和GlassFish 4运行JavaEE7项目的人来说,这些都是有用的提示
# 5 楼答案
更新:
CARGO-491已修复,我已相应更新了答案。总而言之,现在基本上有三种选择:Maven GlassFish插件
第一种选择是使用Maven GlassFish Plugin。该插件允许与本地或远程GlassFish安装交互,并在Maven build lifecycle中管理GlassFish域和组件部署
Maven嵌入式GlassFish插件
第二种选择是使用Maven Embedded Glassfish Plugin。正如其名称所述,该插件不依赖现有安装,而是使用嵌入式GlassFish,与插件运行在同一JVM中。如果你想让你的构建保持可移植性(任何人都可以获得你的POM并运行一个包含GlassFish的构建,而不需要安装它),这个插件非常好,它的功能几乎与普通GlassFish安装相同,当然除了集群(如果你想的话,可以使用预配置的
domain.xml
)。有关示例,请参见Testing with the GlassFish Maven plugin and JavaDB EmbeddedMaven Cargo插件
川口浩介(Kohsuke Kawagushi)发起的工作最终整合到了Cargo中,并从Cargo 1.0.1开始,GlassFish 3.x is now supported。因此,使用Maven Cargo plugin是第三种选择。对于希望以不可知的方式与容器交互的构建来说,这会很有趣。但我不确定Cargo是否允许GlassFish特定插件的所有灵活性(例如部署JMS资源等)