LoginSignup
0
0

DataSpiderSDKと外部ライブラリの利用

Last updated at Posted at 2022-10-19

外部ライブラリの利用

独自のアダプタを使用するにあたり、他の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ファイルを置くフォルダの位置

image.png

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アダプタの製造について紹介していきます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0