外部ライブラリの利用
独自のアダプタを使用するにあたり、他のjarライブラリを使用する場面が考えられます。
外部ライブラリの利用については、コンポーネントSDK 4.2 開発ガイドにも記載※のあるとおりサポートしている旨の記載がありました。
※ 「17. 外部ライブラリの利用について」
開発ガイドの記載内容 ※ 一部抜粋
17. 外部ライブラリの利用について
DataSpider Servista のライブラリ以外を参照している場合は、
そのライブラリを下記のディレクトリに配置してビルドを実行してください。
$SDK.HOME/dev/XXX_adapter
上記ディレクトリに置かれたライブラリは、ant install コマンドを実行すると、
DATASPIDER_HOME/server/plugin/data_processing/modules/XXX_adapter ディレクトリにコピーされます。
外部ライブラリの配置場所
開発ガイドにある$SDK.HOME/dev/XXX_adapter下にjarファイルを配置すると、ソースコードのツリーが煩雑になるため、プロジェクト直下にlibsフォルダを作成し、その下に各jarファイルを置く設定にを追加し、ビルド後にDataSpiderのアダプタフォルダ下にコピーする設定をします。
DataSpiderSDKに付属のbuild.xmlを編集します。
外部jarファイルを置くフォルダの位置
DataSpiderSDKに付属のbuild.xml編集
ビルドする際のjar参照先にlibsフォルダを参照するように修正します。
下に以下のタグを追加します。$SDK.HOME\dev\build.xml
<!-- compile -->
<target name="compile" depends="native2ascii">
<javac
srcdir="${build.dir.src}"
includes="**/*.java"
destdir="${build.dir.classes}"
deprecation="on">
<classpath>
<fileset dir="${dataspider.dir.common.lib}">
<include name="*.jar" />
<include name="*.zip"/>
</fileset>
<fileset dir="${dataspider.dir.share.lib}">
<include name="*.jar" />
<include name="*.zip"/>
</fileset>
+ <fileset dir="./libs">
+ <include name="*.jar" />
+ </fileset>
<fileset dir=".">
<include name="*.jar" />
<include name="*.zip"/>
</fileset>
</classpath>
</javac>
</target>
$SDK.HOME\dev\build.xml
つづいて、build.xmlファイルの下方向にスクロールし、以下の行を追加します。
<!-- install -->
<target name="install" depends="jar">
<property name="dir.target" value="${dataspider.dir.modules}/${module}"/>
<mkdir dir="${dir.target}"/>
<mkdir dir="${dir.target}/META-INF"/>
<copy file="${build.jar}" todir="${dir.target}" />
<copy todir="${dir.target}/META-INF">
<fileset dir="${dir.meta-inf}">
<include name="*.icon"/>
<include name="*.properties"/>
</fileset>
</copy>
<!-- ライブラリのコピー -->
+ <copy todir="${dir.target}">
+ <fileset dir="./libs">
+ <include name="*.jar"/>
+ </fileset>
+ </copy>
<copy todir="${dir.target}">
<fileset dir=".">
<include name="*.jar"/>
<include name="*.zip"/>
</fileset>
</copy>
</target>
設定は以上です。
$DATASPIDER_HOME\server\plugin\data_processing\share\lib\下にjarファイルを置くことにより、ビルドや実行時にjarファイルが必要に応じて参照されますが、既存のDataSpiderが持っているjarファイルのバージョン差異による衝突が発生する可能性があり、注意が必要です。
次回は
ここまでで、DataSpiderSDKを用いた基本的な開発環境について紹介してきました。
次回からは、ブロックチェーンとNFTアダプタの製造について紹介していきます。