很多时候,我们可能不是直接在集算器中执行dfx脚本,而是将集算器集成到第三方应用中来使用。那么如果想要使用外部库功能,就需要从【集算器安装根目录】/esProc/config目录下取raqsoftConfig.xml,手动在文件的<Runtime><EsProc> ... </EsProc></Runtime>中加上以下代码,指定外部库所需jar的引用路径:
<extLibsPath>外部库文件夹路径</extLibsPath>
<importLibs>
<lib>外部库文件夹名称</lib>
</importLibs>
下面以集算器嵌入到java应用程序中为例,介绍建模YModelCli外部库在第三方应用中的使用:
1. 加载集算器JDBC需要用到的jar包
参考《教程》 集算器JDBC的基本部署 章节,放入集算器JDBC所需的jar。
2. 配置集算器JDBC的raqsoftConfig.xml文件
参考《教程》配置raqsoftConfig.xml章节
3. 加载建模外部库jar包
将建模YModelCli外部库核心jar(scu-ym2-cli-2.10.jar)及以下列表的文件拷贝到一个独立的目录中,如(D:\extlib\YModelCli):
apache-ant-zip-2.3.jar
commons-io-2.4.jar
fastjson-1.2.58.jar
gson-2.8.0.jar
jackson-annotations-2.9.6.jar
jackson-core-2.9.6.jar
jackson-databind-2.9.6.jar
jackson-databind-2.9.6-sources.jar
jackson-dataformat-msgpack-0.8.14.jar
mining.jar
msgpack-0.6.12.jar
msgpack-core-0.8.16.jar
4. 在集算器JDBC的raqsoftConfig.xml中加入外部库的节点<lib>:
配置外部库的节点<lib>,上述步骤3中我们已将建模外部库所需的jar放入到D:\ extlib\YModelCli目录下,下面可直接添加节点:
<Esproc>
… …
//配置外部库文件夹路径
<extLibsPath>D:\extlib</extLibsPath>
<importLibs>
//配置外部库文件夹名称
<lib>YModelCli</lib>
</importLibs>
</Esproc>
5. 部署访问建模外部库数据的dfx文件:
|
A |
|
1 |
=ym2_env("F:/ymodel") |
初始化环境。 |
2 |
=ym2_pcfload("F:/ymodel/data/train.pcf") |
返回pcf对象。 |
3 |
=ym2_predict(A2,"F:/ymodel/data/train.csv") |
进行数据预测。 |
4 |
>ym2_close(A3) |
释放资源。 |
此dfx文件部署方式参考《教程》应用集成 – 被JAVA调用章节。
到此,就可以在JAVA中调用dfx文件了。