我正试图从Arquillian的另一个maven项目中部署一个现有的war。我已经解决了这场战争,并将其复制到我的Arquillian项目的目标目录中。
我试着在下面创建它:
@Deployment
public static WebArchive createDeployment() {
return (WebArchive) ShrinkWrap.create(ZipImporter.class, "MyWarToTest.war").importFrom(
new File("target/MyWarToTest.war"));
}然而,我得到了一个类强制转换异常。
由: org.jboss.shrinkwrap.impl.base.importer.zip.ZipImporterImpl :java.lang.ClassCastException引起的无法转换为org.jboss.shrinkwrap.api.Archive
我猜我应该尝试用另一种方式制造战争?
发布于 2013-07-23 14:06:00
我找到了答案。我需要将.as(WebArchive.class)添加到调用的末尾。
它应该是这样的:
@Deployment
public static WebArchive createDeployment() {
return ShrinkWrap.create(ZipImporter.class, "payloadPlan.war").importFrom(new File("target/payloadPlan.war"))
.as(WebArchive.class);
}我在这里找到了答案:http://zezutom.blogspot.com/2012/08/going-mobile-with-arquillian.html
发布于 2013-12-06 13:17:19
加上我的两分钱。更快(结果相同)是以下方法:
@Deployment
public static WebArchive createDeployment() {
return ShrinkWrap.createFromZipFile(WebArchive.class, new File("target/payloadPlan.war"));
}https://stackoverflow.com/questions/17811791
复制相似问题