- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个应用程序,其中包含许多 servlet。我使用的开发环境是 Eclipse(3.2.1,它很旧),我在其中运行 Tomcat 服务器(5.5.23,也很旧),使用 Eclipse Tomcat Wrapper 插件来完成任务。所有这些都运行在 RedHat 5.2 Linux 系统上。
我使用的 Java 运行时是 JDK 1.6.0(21),我最近升级到(从以前的 JDK 1.5 版本),据我所知,上面的软件组合(连同我正在使用的应用程序) ) 确实有效:我可以启动 Tomcat 服务器,它启动时没有错误或提示,并且应用程序的 servlet 在端口 8080 上可用。
但是,某处发生了变化(可能在应用程序 jarfile 本身中,我怀疑主机上的所有内容都是导致此问题的根本原因)。现在,当我尝试启动 Tomcat 服务器时,控制台输出中出现错误 sun.misc.InvalidJarIndexException
。这发生在以下类和方法中:
org.apache.commons.modeler.Registry registerComponent
(发生 3 次) org.apache.catalina.core.StandardServer initialize
(发生一次)org.apache.catalina.connector.Connector start
(发生两次)find /usr -name \*name-of-suspected-jar\*.jar
以追踪一些建议的违规 JARS。我还尝试在 Eclipse 中检查 Tomcat 服务器的运行时配置,但确实无法将系统上的 JAR 文件与 Tomcat 运行时设置的
CLASSPATH
(或启动 Eclipse 时环境中使用的
CLASSPATH
)匹配。这项工作可能需要我更加严格,但在这样做之前(这就是为什么我现在不在这里发布有关
CLASSPATH
的所有血腥细节的原因),我仔细阅读了
InvalidJarIndexException
的真正含义。
CLASSPATH
中的所有 JARS 中短路搜索,这在许多情况下都很有用。问题是当
INDEX.LIST
文件碰巧损坏(或被认为损坏)时,会导致类的加载完全放弃(类加载器不会回退到搜索
CLASSPATH
中的所有 JAR)并且要抛出错误
InvalidJarIndexException
。更麻烦的是,搜索 JAR 的顺序可能会影响类加载器处理
INDEX.LIST
文件的方式:一个 JAR 的
INDEX.LIST
文件可能引用其他 JARS,如果引用的 JARS 与第一个 JAR 的
INDEX.LIST
不同步文件,类加载器失败并出现此
InvalidJarIndexException
错误。
INDEX.LIST
,即使 JAR 具有有效的
INDEX.LIST
或合法地缺少,它似乎甚至可以在 JAR 上抛出
INDEX.LIST
仅仅是因为先前搜索的 JAR 混淆了类加载器。 (换句话说,由于系统上其他地方的违规者,即使对于“无辜的”未损坏的 JAR 文件,也可能抛出此异常)。
.jar
被抛出的精确 InvalidJarIndexException
文件的最佳方法是什么? .jar
文件是否具有 INDEX.LIST
文件的最佳方法是什么,如果是,则该文件是否有效(即未损坏)?有哪些工具可用于此任务? .jar
文件的搜索顺序?我可以尝试手动跟踪 CLASSPATH
,但老实说,这很容易出错且乏味。 .jar
文件,这可能会混淆类加载器,以便稍后在搜索中指责无辜的、未损坏的 .jar
文件具有不正确的 INDEX.LIST
文件? InvalidJarIndexException
将非常有教育意义!
最佳答案
采取以下步骤来诊断问题:
关于java - 如何在 Eclipse 中的 Tomcat 中使用导致 InvalidJarIndexException 的损坏的 JAR 索引来追踪 JAR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5926333/
我浏览了 JAR规范文档,发现内存中的 hashtable 是使用 INDEX.LST 文件创建的,以加快类文件查找过程。 如果有人能回答我下面的问题- 什么时候构建hashtable?应用程序何时加
当我尝试在应用程序中使用 Jython 独立 JAR 时,出现 InvalidJarIndexException,并且我无法弄清楚我做错了什么。 一旦我尝试使用以“com.”开头的包中的任何 Java
我正在Weblogic版本12C上部署GWT2.5应用程序并使用JDK1.6 我正在获取 sun.misc.InvalidJarIndexException:无效索引 以下是完整的堆栈跟踪。 [ec
我正在开发一个应用程序,其中包含许多 servlet。我使用的开发环境是 Eclipse(3.2.1,它很旧),我在其中运行 Tomcat 服务器(5.5.23,也很旧),使用 Eclipse Tom
我是一名优秀的程序员,十分优秀!