【问题标题】:Arquillian: Create a WebArchive from an existing war using ShrinkWrapArquillian:使用 ShrinkWrap 从现有战争创建 WebArchive
【发布时间】:2013-07-23 13:35:58
【问题描述】:

我正在尝试从 Arquillian 的另一个 maven 项目部署现有的战争。 我已经解决了战争并将其复制到我的 Arquillian 项目的目标目录中。

尝试在下面创建它:

@Deployment
public static WebArchive createDeployment() {

    return (WebArchive) ShrinkWrap.create(ZipImporter.class, "MyWarToTest.war").importFrom(
            new File("target/MyWarToTest.war"));

}

但是,我遇到了一个类转换异常。

引起:java.lang.ClassCastException: org.jboss.shrinkwrap.impl.base.importer.zip.ZipImporterImpl 不能 转换为 org.jboss.shrinkwrap.api.Archive

我猜我应该尝试以不同的方式制造战争?

【问题讨论】:

    标签: jboss-arquillian shrinkwrap


    【解决方案1】:

    加上我的 2 美分。下面的方法更快(并且结果相同):

    @Deployment
    public static WebArchive createDeployment() {
        return ShrinkWrap.createFromZipFile(WebArchive.class, new File("target/payloadPlan.war"));
    }
    

    【讨论】:

      【解决方案2】:

      我找到了答案。 我需要将 .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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-24
        • 1970-01-01
        相关资源
        最近更新 更多