整理一下今天遇到的问题:
1.在Eclipse环境下加载weka源码:
使用的weka版本是weka3-6-11,里面的src.jar包解压到项目project中后,有main和test两个文件夹,就因为这个,被坑了。加载后,项目一大片红色的叉叉,到处是出错信息。查看代码,发现import导入的包是weka.classifier(举个例子),然而,src包中并没有这个源码包,是test惹的祸,把test文件夹删除了(估计是单元测试用的),大片红色叉叉消失,但是,项目上仍然有红色叉叉,找到problem信息台,发现是无法删除bin文件夹下test的某个class文件,不明白这是什么意思,运行gui下的main主类,控制台出错信息是无法加载或找不到主类。查看bin文件夹,发现是没有生成class文件。结合problem中的提示,分析应该是bin中test的class文件没有删除,导致无法编译正常的main文件。重启计算机,删除bin下test文件夹,重新编译源码,可以运行,整合成功。
经验:
1》.出错后,查看控制台出错信息+problem信息,结合起来思考问题。
2》java只有编译成了class文件,才可加载。.
2.Eclipse环境下调用weka库中的算法:
调用weka库中的算法,一般流程如下;
1.》导入arff文件,训练集;
2》初始化分类器(举个例子)或者算法模型;
3》训练该模型;
4》得到预测模型(类)
5》打印结果。
另外,可以把导入训练集和得到预测模型类封装成工具类供后续复用,减少代码工作量。