jni4net不会生成MyCSharpDemoCalc.j4n.dll。 generateProxy说它确实如此,但文件没有被创建。因此,我得到System.IO.FileNotFoundException。这是jni4net中的错误吗?我使用的是0.8.6.0版本
D:\Temp\jni4net\samples\myCSharpDemoCalc>generateProxies
..\..\lib\jni4net-LGPL-3.0.txt
..\..\lib\jni4net.j-0.8.6.0.jar
..\..\lib\jni4net.n-0.8.6.0.dll
..\..\lib\jni4net.n.w32.v20-0.8.6.0.dll
..\..\lib\jni4net.n.w32.v40-0.8.6.0.dll
..\..\lib\jni4net.n.w64.v20-0.8.6.0.dll
..\..\lib\jni4net.n.w64.v40-0.8.6.0.dll
7 file(s) copied.
jni4net.proxygen - Copyright (C) 2009 Pavel Savara - licensed under GPLv3
will generate JVM mycsharpdemocalc.icalc
will generate JVM mycsharpdemocalc.democalc
proxygen done
compile classes
MyCSharpDemoCalc.j4n.jar
MyCSharpDemoCalc.j4n.dll
csc: file `/nologo' does not exist
compiling usage
D:\Temp\jni4net\samples\myCSharpDemoCalc>run
D:\Temp\jni4net\samples\myCSharpDemoCalc>cd work
D:\ Temp \ jni4net \ samples \ myCSharpDemoCalc \ work> java -cp jni4net.j-
0.8.6.0.jar; MyCSharpDemoCalc.j4n.jar ;.线程“main”中的MyCalcUsageInJava异常System.IO.FileNotFoundException:
d:\ TEMP \ jni4net \样本\ myCSharpDemoCalc \工作\ MyCSharpDemoCalc.j4n.dll at net.sf.jni4net.Bridge.LoadAndRegisterAssemblyFromClassLoader(File assemblyFile,ClassLoader classLoader)at net.sf.jni4net.Bridge.LoadAndRegisterAssemblyFrom(File assemblyFile)
在net.sf.jni4net .__ Bridge.LoadAndRegisterAssemblyFrom3(IntPtr __envp, JniLocalHandle __class,JniLocalHandle assemblyFile) at net.sf.jni4net.Bridge.LoadAndRegisterAssemblyFrom(Native Method) 在MyCalcUsageInJava.main(MyCalcUsageInJava.java:11)
其他人是否有同样的问题?
答案 0 :(得分:1)
问题在这里
csc:文件`/ nologo'不存在
你必须在你的变量environemnet中放入DotNet编译器的路径(在我的例子中为C:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319)。它的工作原理