引起:java.lang.ClassCastException: org.jboss.vfs.protocol.VirtualFileURLConnection 无法转换为 java.net.JarURLConnection

问题描述

URL jarURL = ExternalOrdersManagerUtils.class.getClassLoader().getResource("com/session/utils/ExternalOrdersManagerUtils.class");
        JarURLConnection jurlConn = null;
        try {
            jurlConn = (JarURLConnection)jarURL.openConnection();
        } catch (IOException e) {
            logger.error(e.getMessage(),e);
        }
        Manifest mf = null;
        try {
            mf = jurlConn.getManifest();
        } catch (IOException e) {
            logger.error(e.getMessage(),e);
        }
        Attributes attr = mf.getMainAttributes();

我使用了 Java 8 版本和 jboss-6.1.0.Final_cp 版本部署服务器。 我收到如下错误。请帮我解决这个问题。

java.lang.classCastException: org.jboss.vfs.protocol.VirtualFileURLConnection 无法转换为 java.net.JarURLConnectionad.run(Thread.java:748) [:1.8.0_261]

解决方法

您应该使用

加载清单
new Manifest(ExternalOrdersManagerUtils.class.getClassLoader().getResourceAsStream("/META-INF/manifest.mf"));

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...