6 Oracle JETアプリケーションへのサード・パーティ・ツールまたはライブラリの追加

Oracle JETアプリケーションにサード・パーティ・ツールまたはライブラリを追加できます。実行するステップは、アプリケーションの作成に使用した方法によって異なります。

コマンドライン・ツールを使用してアプリケーションをスキャフォールドした場合は、ライブラリをインストールしてappRootDir/path_mapping.jsonを変更します。他の方法でアプリケーションを作成し、RequireJSを使用している場合は、ライブラリをアプリケーションに追加してRequireJSブートストラップ・ファイル(通常はmain.js)を更新します。

ノート:

このプロセスは、Oracle JETの開発者の利便性のために提供されています。Oracle JETでは追加のツールまたはライブラリをサポートしていないため、それらがOracle JETのその他のコンポーネントまたはツールキット機能で正しく機能することを保証できません。

Oracle JETアプリケーションにサード・パーティ・ツールまたはライブラリを追加するには、次のいずれかを実行します:

  • コマンドライン・ツールでアプリケーションを作成した場合は、次のステップを実行します。

    1. メイン・プロジェクト・ディレクトリで、ターミナル・ウィンドウに次のコマンドを入力し、npmを使用してライブラリをインストールします。

      npm install library-name --save

      たとえば、my-libraryという名前のライブラリをインストールするには、次のコマンドを入力します。

      npm install my-library --save
    2. 新規ライブラリをパス・マッピング構成ファイルに追加します。

      1. appRootDir/path_mapping.jsonを編集するために開きます。

        ファイルの一部を次に示します。

        {
         
          "use": "local",
        
          "cdns": {
            "jet": "https://static.oracle.com/cdn/jet/16.1.0/default/js",
            "css": "https://static.oracle.com/cdn/jet/16.1.0/default/css",
            "config": "bundles-config.js"
            },
            "3rdparty": "https://static.oracle.com/cdn/jet/16.1.0/3rdparty"
          },
        
          "libs": {
        
            "knockout": {
              "cdn": "3rdparty",
              "cwd": "node_modules/knockout/build/output",
              "debug": {
                "src": "knockout-latest.debug.js",
                "path": "libs/knockout/knockout-#{version}.debug.js",
                "cdnPath": "knockout/knockout-3.x.x"
              },
              "release": {
                "src": "knockout-latest.js",
                "path": "libs/knockout/knockout-#{version}.js",
                "cdnPath": "knockout/knockout-3.x.x"
              }
            },
        
        ... contents omitted
      2. "libs"内にある既存のエントリのいずれかをコピーし、ライブラリの必要に応じて変更します。

        次のサンプルは、縮小バージョンとデバッグ・バージョンの両方が含まれるライブラリmy-libraryのための変更を示しています。

        ...
         "libs": {
        
            "my-library": {
              "cwd": "node_modules/my-library/dist",
              "debug": {
                "src": "my-library.debug.js",
                "path": "libs/my-library/my-library.debug.js"
              },
              "release": {
                "src": "my-library.js",
                "path": "libs/my-library/my-library.js"
              }
            },
        ...

        この例で、cwdはnpmによってライブラリがインストールされた場所、srcはビルド時にコピーされるファイルが格納されているパスまたはパスの配列、pathはビルド・バージョンの格納先をそれぞれ指しています。

        ノート:

        コピーして変更する既存のエントリに"cdn": "3rdparty",が含まれている場合は、ライブラリの新しく作成されたエントリから削除します。この行は、Oracleによって管理されるコンテンツ配布ネットワーク上のOracle JETサードパーティ領域を参照します。ライブラリはそこでホストされないため、この行を残しておくと、存在しないURLにライブラリのパスをマップすることで、実行時にリリース・ビルドが失敗します。

        CDNを使用する場合は、CDNのURLをcdnPathのエントリに追加します。

  • アプリケーションの作成にツールを使用しなかった場合は、次のステップを実行してツールまたはライブラリを追加します。

    1. アプリケーションの/libsディレクトリに新しいディレクトリを作成し、このディレクトリに新しいライブラリおよび付随するファイルを追加します。

      たとえば、my-libraryというライブラリ名の場合は、my-libraryディレクトリを作成してmy-library.jsファイルおよび必要なファイルを追加します。使用可能な場合は縮小バージョンを追加していることを確認します。

    2. RequireJSブートストラップ・ファイル(通常はmain.js)で、パス・マッピング・セクションに新しいファイルへのリンクを追加し、require()定義に新しいライブラリを含めます。

      たとえば、my-libraryという名前のライブラリを使用するには、強調表示された次のコードをブートストラップ・ファイルに追加します。

      requirejs.config({
        // Path mappings for the logical module names
        paths: 
        {
          'knockout': 'libs/knockout/knockout-3.x.x',
          'jquery': 'libs/jquery/jquery-3.x.x.min',
          ... contents omitted
          'text': 'libs/require/text',
          'my-library': 'libs/my-library/my-library
        },
        require(['knockout', 'my-library'],
        function(ko) // this callback gets executed when all required modules are loaded
        {
            // add any startup code that you want here
        }
      );