cbe*_*din 9 shrinkwrap jboss-arquillian
我正试图从Arquillian的另一个maven项目中部署现有的战争.我已经解决了战争并将其复制到我的Arquillian项目的目标目录中.
我尝试在下面创建它:
@Deployment
public static WebArchive createDeployment() {
return (WebArchive) ShrinkWrap.create(ZipImporter.class, "MyWarToTest.war").importFrom(
new File("target/MyWarToTest.war"));
}
Run Code Online (Sandbox Code Playgroud)
但是,我得到了一个类强制转换异常.
引起:java.lang.ClassCastException:org.jboss.shrinkwrap.impl.base.importer.zip.ZipImporterImpl无法强制转换为org.jboss.shrinkwrap.api.Archive
我猜我应该尝试以不同的方式创造战争?
小智 14
加我2美分.更快速(并且具有相同的结果)是以下方法:
@Deployment
public static WebArchive createDeployment() {
return ShrinkWrap.createFromZipFile(WebArchive.class, new File("target/payloadPlan.war"));
}
Run Code Online (Sandbox Code Playgroud)
cbe*_*din 11
我找到了答案.我需要在调用结束时添加.as(WebArchive.class).
它需要看起来像这样:
@Deployment
public static WebArchive createDeployment() {
return ShrinkWrap.create(ZipImporter.class, "payloadPlan.war").importFrom(new File("target/payloadPlan.war"))
.as(WebArchive.class);
}
Run Code Online (Sandbox Code Playgroud)
我在这里找到答案:http: //zezutom.blogspot.com/2012/08/going-mobile-with-arquillian.html
| 归档时间: |
|
| 查看次数: |
8415 次 |
| 最近记录: |