我的Java应用程序需要org.objectweb.asm库。我在POM中指定了“ASM”依赖项。它将库与应用程序一起部署。尽管如此,该应用程序仍抛出异常NoClassDefFounderRor:org/objectWeb/asm/ClassVisitor。
java.lang.NoClassDefFoundError: org/objectweb/asm/ClassVisitor
at com.sun.jersey.api.core.PackagesResourceConfig.init(PackagesResourceConfig.java:112)
at com.sun.jersey.api.core.PackagesResourceConfig.<init>(PackagesResourceConfig.java:78)
... many more
我怎样才能解决这个问题?
详细信息:我使用的是Glassfish 2.1.1。该应用程序需要泽西1.1.4,泽西需要ASM3.1。我假设glassfish 2.1.1需要1.1.4版本
如果我运行Glassfish updatetool并在服务器上安装Jersey,那么我的应用程序将不会出现任何问题。我的客户没有在他们的服务器上安装泽西,他们不能使用UpdateTool。
Glassfish 2.1.1 updatetool在Glassfish/lib目录中安装jersey 1.1.4和ASM-3.1.jar。卸载jersey时,updatetool也会删除asm。
如果我包含jersey和asm作为依赖项并部署war文件,那么jersey和asm JAR将进入本地位置,例如glassfish/domains/domain1/applications/j2ee-modules/myappname/web-inf/lib/asm-3.1.jar。
Glassfish updatetool将asm放入lib文件夹:Glassfish/lib目录,应用程序开始部署并正常工作。
下面是我的maven pom文件依赖项部分:
<dependencies>
<dependency>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-bundle</artifactId>
<version>1.1.4</version>
</dependency>
<dependency>
<groupId>com.sun.jersey.jersey-test-framework</groupId>
<artifactId>jersey-test-framework-grizzly2</artifactId>
<version>1.17.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.jboss.spec</groupId>
<artifactId>jboss-javaee-6.0</artifactId>
<version>1.0.0.Final</version>
<scope>provided</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
</dependencies>
glassfish/lib/jersey-bundle-1.0.3.1.jar
glassfish/domains/domain1/applications/j2ee-modules/MYAPPNAME/WEB-INF/lib/
logger.debug(PackagesResourceConfig.class.getResource("PackagesResourceConfig.class"));
问题内容: 通过不将数十个JAR依赖项包装到lib目录中,OSGi似乎具有一个小的可部署工件的巨大好处。但是,我找不到任何能告诉我一种简单,可靠的方式来将依赖项部署到容器的方法。例如,我有一个使用CXF和几个Spring子项目的应用程序。如果需要将此应用程序部署到新的Glassfish服务器上,那么最好的方法是确保安装所有依赖项? 我正在使用Maven, 似乎 可以使用某种方法来查看META-IN
问题内容: 我正在使用Airflow计划批处理作业。我有一个DAG(A)每晚运行,另一个DAG(B)每月运行一次。B取决于A已成功完成。但是B需要很长时间才能运行,因此我想将其保存在单独的DAG中,以实现更好的SLA报告。 如何使运行DAG B依赖于同一天DAG A的成功运行? 问题答案: 您可以使用名为ExternalTaskSensor的运算符来实现此行为。将安排DAG(B)中的任务(B1
为什么使用idea创建父子工程选择maven创建的时候有父项,而使用Springboot创建父子工程的时候pom里面就没有父子依赖关系呢?必须要手动指定?
我有两个网络应用程序,它们部署在同一个野蝇中。这两个webapp都应该共享某些库,这些库不属于野蝇模块的一部分。 为了使部署不依赖于特定的wildfly,我不希望通过wildfly模块系统提供共享库(我知道,用户可以定义模块)。 我的方法是简单地将库和两个webapp放在部署目录中,并在各自的jboss部署结构中引用它们。然而,这失败了。 我试图将该库嵌入到战争中,并通过 由于找不到模块,因此它将
本文向大家介绍详解如何在 Docker 中设置 Go 并部署应用,包括了详解如何在 Docker 中设置 Go 并部署应用的使用技巧和注意事项,需要的朋友参考一下 嗨,在本教程中,我们将学习如何使用 docker 部署 golang web 应用程序。 你可能已经知道,由于 golang 的高性能和可靠性,docker 是完全是用 golang 写的。在我们详细介绍之前,请确保你已经安装了 doc
编写的PHP扩展需要需要依赖另外一个扩展,在PHP-X中可以调用Extension->require来实现。 PHPX_EXTENSION() { Extension *ext = new Extension("test", "0.0.1"); ext->require("swoole"); ext->require("sockets"); return ext;