JDM初体验(一)环境
在dwblog看到Java Data Mining规范 (JSR-73)发布 ,于是兴冲冲跑去尝试一下,从JCP的页面 上把这个jsr73的包当下来,解开之后又是几个压缩包,照着readme分别解开,安置到位,发现还需要到www.junit.org下载一个junit(目前为止还没派上用场),统统搞定,目录结构如下:
JDM
|
+-- libs : junit.jar, jdmTCK.jar, jdmTCKFramework.jar, jdmRI.jar
|
+-- RI : launch.bat, launch.sh, Readme.txt
| |
| +-- config : configuration and property files needed to run TCK
against RI
| |
| +-- reports : to contain report files after running TCK against RI
| |
| +-- data : data files needed for RI
| |
| +-- samples : sample applications using RI
|
+-- TCK : Readme.pdf
| |
| +-- config : example configuration and property files (also works
with RI)
| |
| +-- reports : sample TCK reports
|
+-- Spec : JDM specification
|
+-- lib : jdm.jar
浏览一下几个目录和各自的说明,libs自然是需要的内裤,spec是文档API, TCK目录是用来验证是否符合规范的一个tool kit, ri目录是一个sample.
接着继续按照说明文件的指示,执行RI下的laungch.bat,然后编译samples下的例程文件TestClassificationModel.java,意料之内的出现一堆错误.看了一下,是找不到import的类.查看了下那个launch.bat,都是设置环境变量的,估计没起作用,这个以前也遇到过类似的事情.那么就手工设置一下,再编译,冉冉是意料之内的一堆错误.大概又是引入包的问题,老办法,干脆把所有的包都解开,分门别类的直接放在samples里面.编译,ERROR AGAIN,再次检查,发现有个CLASS找不到,回头又看说明,所有的包都在了嘛,于是开始研究包里的类,是不是classpath里设置的顺序问题.正在乱试的时候又想到那个 launch.bat,打开一看,果然,里面还设了一个jdm,jar,巨faint,什么狗屁readme,终于在spec里找到了这个包,一起加进去.再来,还是有错,再看代码,原来用到了另一个类,那么先编译这个DefaultJDMTest.java.
再次不出意料的出现错误,报不到javax.resource.cci.connection云云,代码是:
ConnectionFactoryImpl lConnectionFactory =
new ConnectionFactoryImpl(iURI);
ConnectionSpec lConnSpec = lConnectionFactory.getConnectionSpec();
return lConnectionFactory.getConnection(lConnSpec);
cci?前面拆包的时候没见过呀,于是再次看这个com.......ConnectionFactoryImpl类,里面确实import了这个什么见鬼的cci.connection.怪了,回网站看了一圈,没有结果,再搜索所有的文件,还是没这个内裤,再次faint.不甘心就这么放弃,于是跑去google搜索,连中英文加一起才9条结果,唯一一个看着有希望的还要密码%^&*^$%$&* 第n次郁闷后,决定去sun的API一个个查,黄天不负,原来是j2ee的一个内裤,懒得找单个内裤下载了,反正j2ee以后也用得着,干脆全拖下来,100多MB,装了半天,这次DefaultJDMTest总算是通过.然后再试TestClassificationModel.java,居然告诉我找不到DefaultJDMTest类,口吐白沫啊...... 难道这也要设classpath,同一个目录下的类啊,以前从来没遇到过的,见鬼,restart,继续白沫...... 只好看看代码,这里用到的是extend DefaultJDMTest, 难道这样的用法需要设置吗,不管先试了再说,BINGO,总算通过,原因以后再查了. 今天看来也只能试到这里,好在总算能跑起来了.
JDM
|
+-- libs : junit.jar, jdmTCK.jar, jdmTCKFramework.jar, jdmRI.jar
|
+-- RI : launch.bat, launch.sh, Readme.txt
| |
| +-- config : configuration and property files needed to run TCK
against RI
| |
| +-- reports : to contain report files after running TCK against RI
| |
| +-- data : data files needed for RI
| |
| +-- samples : sample applications using RI
|
+-- TCK : Readme.pdf
| |
| +-- config : example configuration and property files (also works
with RI)
| |
| +-- reports : sample TCK reports
|
+-- Spec : JDM specification
|
+-- lib : jdm.jar
浏览一下几个目录和各自的说明,libs自然是需要的内裤,spec是文档API, TCK目录是用来验证是否符合规范的一个tool kit, ri目录是一个sample.
接着继续按照说明文件的指示,执行RI下的laungch.bat,然后编译samples下的例程文件TestClassificationModel.java,意料之内的出现一堆错误.看了一下,是找不到import的类.查看了下那个launch.bat,都是设置环境变量的,估计没起作用,这个以前也遇到过类似的事情.那么就手工设置一下,再编译,冉冉是意料之内的一堆错误.大概又是引入包的问题,老办法,干脆把所有的包都解开,分门别类的直接放在samples里面.编译,ERROR AGAIN,再次检查,发现有个CLASS找不到,回头又看说明,所有的包都在了嘛,于是开始研究包里的类,是不是classpath里设置的顺序问题.正在乱试的时候又想到那个 launch.bat,打开一看,果然,里面还设了一个jdm,jar,巨faint,什么狗屁readme,终于在spec里找到了这个包,一起加进去.再来,还是有错,再看代码,原来用到了另一个类,那么先编译这个DefaultJDMTest.java.
再次不出意料的出现错误,报不到javax.resource.cci.connection云云,代码是:
ConnectionFactoryImpl lConnectionFactory =
new ConnectionFactoryImpl(iURI);
ConnectionSpec lConnSpec = lConnectionFactory.getConnectionSpec();
return lConnectionFactory.getConnection(lConnSpec);
cci?前面拆包的时候没见过呀,于是再次看这个com.......ConnectionFactoryImpl类,里面确实import了这个什么见鬼的cci.connection.怪了,回网站看了一圈,没有结果,再搜索所有的文件,还是没这个内裤,再次faint.不甘心就这么放弃,于是跑去google搜索,连中英文加一起才9条结果,唯一一个看着有希望的还要密码%^&*^$%$&* 第n次郁闷后,决定去sun的API一个个查,黄天不负,原来是j2ee的一个内裤,懒得找单个内裤下载了,反正j2ee以后也用得着,干脆全拖下来,100多MB,装了半天,这次DefaultJDMTest总算是通过.然后再试TestClassificationModel.java,居然告诉我找不到DefaultJDMTest类,口吐白沫啊...... 难道这也要设classpath,同一个目录下的类啊,以前从来没遇到过的,见鬼,restart,继续白沫...... 只好看看代码,这里用到的是extend DefaultJDMTest, 难道这样的用法需要设置吗,不管先试了再说,BINGO,总算通过,原因以后再查了. 今天看来也只能试到这里,好在总算能跑起来了.