创建ShrinkWrap后,我可以使用这行代码
查看文件结构System.out.println(webArchive.toString(true));
我想知道是否有可能在shrinkWrap中看到特定文件的内容,例如我想在创建shrinkWrap后看到我的persistence.xml的内容。
是否有任何特定的代码段来打印shrinkWrap中的文件内容? 或者文件系统中是否有任何地方可以查找临时的shrinkWrap文件并浏览它的文件和内容
答案 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