当前位置: 首页 > 知识库问答 >
问题:

如何解决NoClassDefFoundError?

罗河
2023-03-14

我已经在Oracle Linux上安装了Oracle Weblogic 11g,并尝试使用jdeveloper 11g完成Oracle的一个ADF教程。当我运行我的项目时,它编译成功,没有错误。它开始将应用程序部署到weblogic服务器,并打开默认的internet浏览器。但随后出现错误“500 Internal server Error”。

我收到以下错误:

<代码>java。lang.NoClassDefFoundError:无法初始化类组织。阿帕奇。我的脸。特立尼达岛内部。转换颜色转换器位于

为了解决这个问题,我在互联网上进行了研究,我也四处打听了一下,常见的答案是类路径有问题。可能jDeveloper中使用的库在weblogic中不一样,然后项目就被部署了。

谁能确定问题是否出在类路径上??我如何设置jdeveloper来部署它用于weblogic服务器的相同类路径?

共有3个答案

夏法
2023-03-14

首先:您要向服务器部署什么?ADF jar或WAR文件。在您的情况下-鉴于您在应用程序服务器上没有安装任何依赖的jar。您应该部署一个WAR文件。

在您的视图项目上-右键单击并选择项目属性。然后转到部署并编辑部署配置文件(如果没有,请创建一个)。确保选中“包含来自其他项目的库”复选框。(它在库依赖项选项卡中)。

另外:你可能会在这里找到一些有用的信息。

希望这有帮助。迈克尔

慕承恩
2023-03-14

当您尝试加载一个试图加载另一个不在类路径上的类时,就会发生这种情况。找出ColorConverter需要哪些类,并确保您的类路径中包含它们。

朱慈
2023-03-14

<代码>java。lang.NoClassDefFoundError表示类路径中类的运行时版本与编译时的版本不同。

您的问题可能是在服务器部署时发现了类的多个版本。我注意到类org.apache.myfaces.trinidadinternal.convert.ColorConvertertrinidad-impl.jar中找到

你能搜索在运行时服务器环境和你自己的webapp库中找到多少这样的jar吗?

在windows上,Jdev内置服务器在此文件夹中运行

C: \个用户\

你需要在你的webapp/WEB-INF/lib中使用它,而不是在其他领域。

在我的本地,我在C:\用户\下找到了Jar

我认为您可以使用weblogic.xml设置来强制加载WEB-INF/lib类,而不是在服务器/lib中使用

    <container-descriptor>     
<prefer-web-inf-classes>true</prefer-web-inf-classes>   
</container-descriptor> 
 类似资料:
  • 问题内容: 我正在尝试编写简单的Java代码,以在控制台上显示MongoDB集合。我在类路径中添加了mongodb-driver-3.0.0.jar。 但是,当我尝试执行代码时,它在数据库连接行给了我以下错误: 线程“主”中的异常java.lang.NoClassDefFoundError:com.montan.app.MongoDbJdbc.main(MongoDbJdbc.java:12)上的

  • 问题内容: 我试图通过我的Web项目上的applet访问客户端的临时目录。 当我自己运行小程序时,它毫无问题地得到了。 当我尝试使用javascript并调用applet方法在我的项目上获取它时,我在javascript控制台上运行。当我尝试读取temp目录下的文件时,我也遇到同样的异常。 这正是我所看到的: 怎么解决? 问题答案: 最简单的解决方案是对applet进行签名。

  • 问题内容: 我已经尝试了Oracle Java教程中的两个示例。它们都可以正常编译,但是在运行时都出现以下错误: 我想我可能将Main.java文件放在错误的文件夹中。这是目录层次结构: 这里是 我在这里做错了什么? 更新 将Main类放入graphics包中(添加package graphics;到其中)后,将类路径设置为“ _test”(包含图形的文件夹),进行编译,然后使用java grap

  • 问题内容: 我有2个函数,都返回诺言: 现在,我有了一个清单,在这两个诺言得到解决后,我想立即更新 已解决的主题应如下所示 问题答案: 创建一个承诺,当您通过的所有承诺均被拒绝或 任何 拒绝时,该承诺都会自动解决。 如果像您一样将其传递给数组,则处理成功解析的函数将收到一个数组,其中每个项目都是针对相同索引的诺言的分辨率,例如: 我个人认为传递对象更具可读性,这样您就可以在处理程序中获得一个对象,

  • 我在Oracle的Java教程中尝试了这两个示例。它们都可以很好地编译,但在运行时都会出现以下错误: 我想我可能有文件位于错误的文件夹中。 以下是目录层次结构: 这里是: 我做错了什么? 更新 在我将类放入包(我添加了)之后,将类路径设置为“_test”(包含图形的文件夹),编译它,并使用(从命令行),它工作了。 更新非常晚#2 我没有使用Eclipse(只是记事本和JDK),上面的更新解决了我的

  • 我已经在Oracle的Java教程中尝试了这两个示例。它们都编译得很好,但在运行时,都出现了以下错误: 我想文件可能在错误的文件夹中。 非常晚的更新#2 我没有使用Eclipse(只有记事本++和JDK),上面的更新解决了我的问题。然而,似乎这些答案中有许多是针对Eclipse和IntelliJ IDEA的,但它们有相似的概念。