java在arquillian中向war测试添加内部jar库

8xiog9wr  于 2021-06-30  发布在  Java
关注(0)|答案(0)|浏览(207)

我正试图用arquillian测试一个javarestfulapi(jax-rs)在 war 包裹。中的api war 调用位于 jar .
为了测试这个,我创建了一个arquillian测试,它调用 war 方法。测试位于 test 文件夹中的 war . 问题是arquillian抱怨说它没有找到一个在数据库中内部调用的库 jar (请注意,此库不在 pom.xml ). 我不希望在 war ,如何将此库添加到arquillian的部署中?

@Deployment
public static WebArchive createDeployment() {
    return ShrinkWrap.create(WebArchive.class, "test.war")
        .addClass(DAOException.class)
        .addClass(BeanException.class)
        .addPackages(true, "org.jooq") // <-- I had to copy this library to the war
        .setWebXML("WEB-INF/web.xml")
        .addAsDirectories("/myfolder/mypackage")  // <-- this doesn't work
        .addPackages(true, "ejb.package");
}

更新
我在这里找到的,如果 importFrom 获取文件目录,而不是 jar 文件。

JavaArchive roundtrip = ShrinkWrap
  .create(ZipImporter.class, "myPackageRoundtrip.jar")
  .importFrom(new File("/home/alr/Desktop/myPackage.jar"))
  .as(JavaArchive.class);

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题