Как увидеть содержимое файла в ShrinkWrap

После создания ShrinkWrap я могу увидеть структуру файла, используя эту строку кода.

System.out.println(webArchive.toString(true));

Интересно, можно ли увидеть содержимое определенного файла внутри усадки Wrap, например, я хочу также увидеть содержимое моего файла persistence.xml после создания усадки.

есть ли какой-то конкретный фрагмент кода для печати содержимого файлов внутри shrinkWrap? или есть ли место в файловой системе для поиска временного файла shrinkWrap и изучения его файлов и содержимого


person Yashar    schedule 22.05.2013    source источник


Ответы (2)


Поместите указанную ниже часть в файл arquillian.xml, как описано в руководстве. Таким образом, вы сможете просматривать развернутый тестовый архив. ShrinkWrap сама по себе не обеспечивает такой функции проверки.

Это XML, который вы должны добавить в свой файл arquillian.xml:

<engine>
    <property name="deploymentExportPath">target/deployments</property>
</engine>
person bartosz.majsak    schedule 23.05.2013

Быстрое решение (если вы не хотите всегда копировать под target для теста Arquillian или если вы используете ShrinkWrap независимо от Arquillian) — использовать представление 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

person Michail Alexakis    schedule 17.05.2020