无法启动Weka - 收到错误

时间:2015-04-20 07:33:33

标签: java weka

我已成功安装Weka并需要它连接到我们的MS SQL Server。但是当我启动Weka时,我得到以下错误:

# java -Xmx1000M -jar weka.jar
---Registering Weka Editors---
Trying to add database driver (JDBC): jdbc.idbDriver - Error, not in CLASSPATH?

我可以在哪里获得.jar或lib文件,其中只有下面列出的.jar文件:

# find . -name "*.jar"
./weka.jar
./weka-src.jar
./remoteExperimentServer.jar
[weka-3-6-12]#

我需要安装什么才能成功运行Weka。

根据下面的评论,这是我的“weka / experiment / DatabaseUtils.props”文件的内容:

# grep -i idbDriver weka/experiment/DatabaseUtils.props

#jdbcDriver=RmiJdbc.RJDriver,jdbc.idbDriver
#jdbcDriver=jdbc.idbDriver
#jdbcDriver=RmiJdbc.RJDriver,jdbc.idbDriver,org.gjt.mm.mysql.Driver,com.mckoi.JDBCDriver,org.hsqldb.jdbcDriver

由于每一行都以带有jdbc.idbDriver的'#'开头,我相信这些行都是注释。我的理解是否正确 - 我也相信这个警告/错误可以忽略。

但请告诉我将Weka连接到MS SQL数据库需要做些哪些更改?

2 个答案:

答案 0 :(得分:0)

要通过weka启用与MSSQL的连接,请执行以下操作: (如果您在Windows上,请this

  1. 创建一个启动脚本
  2. 创建DatabaseUtils.props文件
  3. 这是我的启动录。注意如何设置$ CP变量。它包含jtds.jar文件的完整路径,该文件包含MSSQL的jdbc驱动程序。

    #!/bin/bash
    WEKA_HOME=/opt/smallapps/weka-stable/weka
    export WEKA_JAR=$WEKA_HOME/weka.jar
    export PATH=$WEKA_HOME:$PATH
    CP="/usr/share/java/:/opt/dbvis9/jdbc/jtds/jtds.jar:/opt/database/sqlite/sqlite-jdbc.jar:$WEKA_JAR"
    echo "used CLASSPATH: $CP"
    DIR=/opt/smallapps/weka-stable/data/
    echo "changing to '$DIR'"
    cd "$DIR"
    export WEKA_HOME=$DIR
    # start Weka's small GUIChooser window
    java -cp $CP -Xmx500m weka.gui.GUIChooser &
    

    这是我的DatabaseUtils.props文件的开头,删除了注释,存储在其默认位置。 我的完整路径:/opt/smallapps/weka/wekafiles/DatabaseUtils-mssql.props, 已链接到/opt/smallapps/weka/wekafiles/DatabaseUtils.props

    jdbcDriver=org.sqlite.JDBC,net.sourceforge.jtds.jdbc.Driver
    
    jdbcURL=jdbc:jtds:sqlserver://dbhost.mycompany.com:1433;DatabaseName=master
    
    varchar=0
    float=2
    numeric=2
    tinyint=3
    int=5
    bigint=6
    nvarchar=9
    nchar=9
    char=9
    decimal=2
    bit=1
    smallint=5
    date=8
    

    在这里,我添加了一个屏幕截图,其中包含要点击的按钮。

    请注意,没有“连接成功”消息。控制台窗口中仅显示黄色三角形消息。 (红色X - 连接失败时的图标)

    enter image description here

    Microsoft here

    的连接URL文档

答案 1 :(得分:0)

您可以尝试以下步骤。它也适用于我,但适用于 MySQL。在 MSSQL 中可能类似。我尝试为 MSSQL 进行编辑。

1- 从 this link 下载所需的连接器。

2- 根据您的 Java 版本“mssql-jdbc-9.2.1.jre8.jar、mssql-jdbc-9.2.1.jre11.jar、mssql-jdbc-9.2.1.jre15.jar”(这些是“sqljdbc_9_2\enu”文件夹中包含)将文件复制到“Weka”文件夹中。您可以全部复制。

3- 然后您必须在“环境变量”中以大写字母输入 CLASSPATH 值。如果您使用的是 Windows 7,您将已经看到 CLASSPATH。但是,如果您使用的是 Windows 10,则可能需要手动添加。在我的电脑上是这样的: Classpath on Windows 7

4- 将 DatabaseUtils.probs 文件复制到 Weka 文件夹。该文件允许您将数据库中的数据类型与 Weka 自己的数据类型进行匹配。如果某些数据类型不匹配,则必须在此文件中进行设置。

5- 然后你必须从开始菜单打开 Weka。从控制台打开它时它不起作用。反正你不需要控制台。您可以在 Weka 文件夹中的“RunWeka.ini”中设置 RAM 内存量。

6- 单击打开数据库。在屏幕上输入信息如下。请记住,如果密码不正确,仍然可能会出现 JDBC 驱动程序错误。 DB Setting Connection