我写了一个简单的java类文件,即
package Test;
public class Message {
public static String getMessage(String msg)
{
return "Hello "+msg;
}
}
使用ikvmc将此.jar文件转换为.dll然后在我的C#表单应用程序中引用此“IkvmTest.dll”和IKVM.OpenJDK.Core,就像这样
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = Test.Message.getMessage("MyName");
}
但点击按钮后给我错误
"Could not load type 'Test.Message' from assembly 'IkvmTest, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'.":"Test.Message"
有趣的是它在C#console app中完美运行,其中java类文件是
package Test;
public class Message {
public static void getMessage(String msg)
{
System.out.println("Hello "+msg);
}
}
请提供有关表格申请的帮助 更新:我的问题现在已经解决了。实际上java(IkvmTest.jar)和C#表单app(IkvmTest)的项目名称相同,因此jar和C#app生成的.dll(IkvmTest.dll)的名称是冲突的。所以只用不同的名字创建C#项目就解决了我的问题。