我正在使用IKVM 0.46.0.2将java应用程序包装到visual studio 2010 C#环境中的dll中。
代码是,只需使用JFrame创建一个java swing表单并弹出一些图片。
javax.swing.JFrame jf = new javax.swing.JFrame("Form title");
发生以下问题。
Exception : java.awt.AWTError : Toolkit not found: ikvm.awt.NetToolkit, IKVM>AWT>WinForms, Version=0.46.0.2, Culture=neutral, PublicKeyToken=13235d27fcbfff58
at : java.awt.Toolkit$2.run()
at : java.security.AccessController.doPrivileged(Object, AccessControlContext, CallerID)
at : java.security.AccessController.doPrivileged(PrivilegedAction action, CallerID)
at : java.awt.Toolkit.getDefaultToolkit()
at : java.awt.Window.getToolkit()
at : java.awt.Window.init(GraphicsConfiguration)
at : java.awt.window..ctor()
at : java.awt.Frame..ctor(String title)
at : javax.swing.JFrame..ctor(String title)
我添加了参考文件
IKVM.AWT.WinForms
IKVM.OpenJDK.Core
IKVM.OpenJDK.SwingAWT
IKVM.OpenJDK.Text
IKVM.OpenJDK.Util
IKVM.Runtime
我该如何解决这个问题?
感谢和抱歉我的英语
答案 0 :(得分:0)
类ikvm.awt.NetToolkit位于程序集IKVM.AWT.WinForms中。您确定Visual Studio已复制dll吗?
似乎是一个类加载的问题。你是如何编译java应用程序的。请在维基中查看classloading的帮助。