如何在shrinkWrap中查看文件内容

时间:2013-05-22 10:39:34

标签: jboss-arquillian shrinkwrap

创建ShrinkWrap后,我可以使用这行代码

查看文件结构
System.out.println(webArchive.toString(true));

我想知道是否有可能在shrinkWrap中看到特定文件的内容,例如我想在创建shrinkWrap后看到我的persistence.xml的内容。

是否有任何特定的代码段来打印shrinkWrap中的文件内容? 或者文件系统中是否有任何地方可以查找临时的shrinkWrap文件并浏览它的文件和内容

2 个答案:

答案 0 :(得分:11)

将下面报告的部分放入arquillian.xml as described in the guide。 这样您就可以浏览已部署的测试档案。 ShrinkWrap本身不提供这样的检查功能。

这是您应该添加到arquillian.xml文件的XML:

<engine>
    <property name="deploymentExportPath">target/deployments</property>
</engine>

答案 1 :(得分:0)

一种快速的解决方案(如果您不想始终在target下进行Arquillian测试,或者如果您独立于Arquillian使用ShrinkWrap,则可以使用ZipExporter视图:

import org.jboss.shrinkwrap.api.exporter.ZipExporter;
...

WebArchive archive = ShrinkWrap.create(WebArchive.class, "foo.war")
    ... // add classes and libraries ...
    .addClass(Foo.class);

archive.as(ZipExporter.class).exportTo(new File("/tmp/foo.war"), true);

另请参阅: http://arquillian.org/guides/shrinkwrap_introduction/#working_with_file_content