无法启动 Weka - 出现错误
Cannot start Weka - getting error
我已经成功安装了 Weka 并需要它来连接到我们的 MS SQL 服务器。但是当我启动 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 数据库?
要通过 weka 启用与 MSSQL 的连接,请执行以下操作:
(如果你在 windows,请执行 this)
- 创建启动脚本
- 创建一个 DatabaseUtils.props 文件
这是我的开始脚本。请注意 $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
我在此处添加了一个屏幕截图,其中包含要单击的按钮。
请注意,没有 "Connection successful" 条消息。控制台中只会出现黄色三角形消息 window。 (红色 X - 连接失败时的图标)
Microsoft 的连接 URL 文档 here
您可以尝试以下步骤。它也适用于我,但适用于 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。但是,如果您使用的是 Windows10,则可能需要手动添加。在我的电脑上是这样的:
4- 将 DatabaseUtils.probs 文件复制到 Weka 文件夹。该文件允许您将数据库中的数据类型与 Weka 自己的数据类型相匹配。如果某些数据类型不匹配,则必须在此文件中进行设置。
5- 然后你必须从开始菜单打开 Weka。当您从控制台打开它时它不起作用。反正你不需要控制台。您可以在 Weka 文件夹中的“RunWeka.ini”中设置 RAM 内存量。
6- 单击“打开数据库”。在屏幕上输入信息如下。请记住,如果密码不正确,JDBC 驱动程序错误仍可能发生。
我已经成功安装了 Weka 并需要它来连接到我们的 MS SQL 服务器。但是当我启动 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 数据库?
要通过 weka 启用与 MSSQL 的连接,请执行以下操作: (如果你在 windows,请执行 this)
- 创建启动脚本
- 创建一个 DatabaseUtils.props 文件
这是我的开始脚本。请注意 $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
我在此处添加了一个屏幕截图,其中包含要单击的按钮。
请注意,没有 "Connection successful" 条消息。控制台中只会出现黄色三角形消息 window。 (红色 X - 连接失败时的图标)
Microsoft 的连接 URL 文档 here
您可以尝试以下步骤。它也适用于我,但适用于 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。但是,如果您使用的是 Windows10,则可能需要手动添加。在我的电脑上是这样的:
4- 将 DatabaseUtils.probs 文件复制到 Weka 文件夹。该文件允许您将数据库中的数据类型与 Weka 自己的数据类型相匹配。如果某些数据类型不匹配,则必须在此文件中进行设置。
5- 然后你必须从开始菜单打开 Weka。当您从控制台打开它时它不起作用。反正你不需要控制台。您可以在 Weka 文件夹中的“RunWeka.ini”中设置 RAM 内存量。
6- 单击“打开数据库”。在屏幕上输入信息如下。请记住,如果密码不正确,JDBC 驱动程序错误仍可能发生。