我试图动态加载类org.jawin.FuncPtr Jawin: http ://jawinproject.sourceforge.net/不幸的是,我遇到此错误:java.lang.ClassFormatError:类文件org中常量池中的非法UTF8字符串/ jawin / FuncPtr

我正在使用此类:

/*
 * HelloDll.java -
 *
 * This file is part of the Jawin Project: http://jawinproject.sourceforge.net/
 * 
 * Please consult the LICENSE file in the project root directory,
 * or at the project site before using this software.
 */

/* $Id: HelloDll.java,v 1.3 2004/06/14 20:16:38 arosii_moa Exp $ */

package demos;

import org.jawin.COMException;
import org.jawin.FuncPtr;
import org.jawin.ReturnFlags;

/**
 * Demo that uses the Win32 MessageBoxW API-method.
 *
 * @version     $Revision: 1.3 $
 * @author      Stuart Halloway, http://www.relevancellc.com/halloway/weblog/
 */
public class HelloDll {

    public static void main(String[] args) throws Exception {
        FuncPtr msgBox = null;
        try {
            msgBox = new FuncPtr("USER32.DLL", "MessageBoxW");
            msgBox.invoke_I(0, "Hello From a DLL", "From Jawin", 0, ReturnFlags.CHECK_FALSE);
        } catch (COMException e) {
            // handle exception
            e.printStackTrace();
            throw e;
        } finally {
            if (msgBox != null) {
                try {
                    msgBox.close();
                } catch (COMException e) {
                    // handle fatal exception
                    e.printStackTrace();
                    throw e;
                }
            }
        }
    }
}

https://github.com/ghosertTest/TestProject/blob/master/java-workspace/TestJawin/src/demos/HelloDll.java

我正在使用defineClass动态加载它。
如果我将HelloDll类更改为不使用Jawin,而仅打印“ Hello World”,则不会引发任何错误,并且代码可以流畅地运行,因此我认为类加载器[?]没有任何问题。

如何弄清楚为什么会出现此错误?

  ask by John Doe translate from so

本文未有回复,本站智能推荐:

4回复

类文件中常量池中的非法UTF8字符串

我正在尝试为我的网站制作一个Java小程序。 我遇到了重大问题。 我收到此错误:类文件中常量池中的非法UTF8字符串 你可以在这里看到这个错误: http : //www.test.world2build.com/Game/Play.aspx 这个applet的代码可以在这里
1回复

IntelliJ中类文件中常量池中的非法UTF8字符串错误

每当我尝试运行文件(java main,cucumber功能,junit测试)时,IntelliJ Idea中都会出现以下错误: 我尝试重新启动IDE,再次导入项目,但没有任何效果。 有人遇到过此错误吗?
1回复

加载jar的自定义类加载器在类文件的常量池中给我一个非法的UTF8字符串

我需要使用自定义ClassLoader加载第三方驱动程序。 计划是,驱动程序只是共享的jar存档,但带有.dar后缀(驱动程序存档)。 然后,当jvm忽略该文件扩展名并像资源一样处理dar文件时(这意味着忽略其中的类文件),可以将这些归档文件简单地添加到classpath中。 现在我的
1回复

从JAR加载类时发生ClassNotFoundException

我正在尝试创建一个连接到Impala的简单程序,执行查询并返回查询结果。 但是,我一开始就陷入了困境:由于某种原因,我无法从JAR文件加载Impala JDBC Driver类。 我要加载的JAR文件位于项目的根文件夹中的lib /文件夹中。 否则,我的项目将遵循常规的Maven目录布
1回复

加载jar文件时找不到Java类

我正在为程序设计API系统。 该系统转到“插件”文件夹,并在其中加载每个jar。 我正在尝试加载“插件”文件夹中的jar文件的主类,但是这样做时,我得到了ClassNotFoundException。 这是我的代码: 如果问题不清楚或不清楚,请告诉我(我在这里是新来的,所以我会
1回复

动态加载的类无法访问Applet加载的类

我的StartApplet很小,可以保持快速启动。 然后,使用(URLClassLoader)getSystemClassLoader()在各种jar中下载各种类。 我遇到的问题是,在StartApplet中定义了多个接口,这些接口使用方法invoke传递给动态下载的类。 我总是得
2回复

如何按加载顺序覆盖java类?

可以有2个同名的罐子。 是否可以控制JVM将加载(使用)哪个类? 谢谢。
1回复

Java TextToSpeech无法找到或加载主类模型。

我是Java新手 我正在尝试使用TextToSpeech ,我已经通过特定示例引用了库和此.java代码 。 我的Main.java : 但是当我尝试跑步时,我得到了 错误:无法找到或加载主类模型。 项目文件: