在观看JBoss的一些视频教程时,我偶然发现了他们的另一个项目,名为ShrinkWrap (因为Arquillian使用它)。
在他们的项目页面上花了一段时间之后,我似乎找不到一些问题的具体答案,这似乎是一个非常新的(不成熟的)项目,它背后没有一个大的开发社区。具体地说:
提前感谢!
发布于 2012-06-30 17:41:08
拥有内存中JAR的优点之一是可以将其部署到远程JBossAS实例中,而无需将其写入文件。当你不写一个文件时,你不会编造愚蠢的临时JAR文件名,然后记得以后删除它们,等等。
一般的观点是尽可能减少对构建环境的依赖和副作用。
这个项目似乎还不成熟,但事实并非如此。开发非常活跃,社区非常广泛,人们不仅来自JBoss世界,而且来自所有主要的应用服务器社区!
发布于 2012-09-12 15:07:08
传统的构建过程包括将字节写入磁盘,然后由应用服务器将字节读入内存。如果您只想将您选择的应用程序服务器交给您的部署工件,那么这是一个不必要的步骤。应用程序服务器将工件看作是字节流,不管这些字节是从磁盘还是内存中提供的。使用ShrinkWrap,您可以通过编程方式构建您的工件,因此不需要涉及单独的构建过程。
除非您愿意,否则ShrinkWrap不会触摸文件系统。如果您愿意,ShrinkWrap可以使用以下代码轻松地在磁盘上生成物理档案:
WebArchive war = getArtifact();
war.as(ZipExporter.class).exportTo(new File("/tmp/myartifact.war"));您也可以做相反的事情,将物理档案从磁盘导入内存。
Arquillian使用ShrinkWrap,但ShrinkWrap本身绝对不局限于该用例,当然可以独立使用。它可以用于例如VFS任务,甚至可以链接到现有的构建过程(如在http://blog.diabol.se/?p=122上演示)。
https://stackoverflow.com/questions/11249749
复制相似问题