IKVM + DatabaseLoader =类路径问题

时间:2011-09-16 21:31:31

标签: c# java sql-server jdbc weka

通过IKVM的.net中的Weka效果很好。 Wiki中的教程很多 救命。但是,我认为weka加载jdbc jar文件的方式正在引起 .net中的一些问题。我想知道是否有人遇到过这个问题 之前,知道我做错了什么?

  • 我使用ikvmc编译了sql jar:ikvmc -target:library sqljdbc4.jar
  • 我已将它包含在.net项目中,并放入DatabaseUtils.props 在正确的目录中。
  • 我所引用的jar作为独立工具很有用,但是一旦通过Visual Studio加载它就无法找到它。

先谢谢。

以下是错误输出:

Trying to add database driver (JDBC): com.microsoft.sqlserver.jdbc.SQLServerDriver - Warning, not in CLASSPATH?
java.sql.SQLException: No suitable driver found for jdbc:sqlserver://172.30.157.250;DatabaseName=Bidding;integratedSecurity=false;
ssword=expedia1
        at java.sql.DriverManager.getConnection(DriverManager.java:647)
        at java.sql.DriverManager.getConnection(DriverManager.java:226)
        at weka.experiment.DatabaseUtils.connectToDatabase(DatabaseUtils.java:505)
        at weka.experiment.InstanceQuery.retrieveInstances(InstanceQuery.java:287)
        at weka.experiment.InstanceQuery.retrieveInstances(InstanceQuery.java:272)
        at clusterer.InstanceBuilder.getInstances(InstanceBuilder.java:29)
        at clusterer.Clusterer.getTripAdvisorClassified(Clusterer.java:85)
        at clusterer.Clusterer.main(Clusterer.java:39)
        at cli.ConsoleApplication1.Program.Main(Program.cs:14)

1 个答案:

答案 0 :(得分:0)

编译时,可能有助于为-classloader工具指定ikvmc选项。

示例:

ikvmc -out:outputDllName.dll 
-classloader:ikvm.runtime.ClassPathAssemblyClassLoader PathToJarsFolder/*.jar

其中PathToJarsFolder包含尝试从java jar加载的所有classpath个文件。

Reference