JMP® には、 pipを薄くラップしただけの jpip ラッパーがあり、要件ファイル経由でパッケージをインストールするなどの機能が完全にサポートされています。以下に、JSL と Python の 2 つのスクリプトを示します。それぞれ JSL Pick File()ダイアログを使用してユーザーに要件ファイルを選択させ、その後パスがjmputis.jpip()に渡されて要件ファイルが処理されます。示されているコードの大部分は、ファイル選択ダイアログを利用しています。ハードコードされたパスを使用すると、2 行の Python で実行できます。
jmputilsからjpipをインポートする
jpip('インストール', '-r _path_to_requirements.txt')
これを機能させるには、小さなコツが 1 つだけあります。
jmputils.jpip()関数は、分離された JMP 環境にパッケージがインストールされるようにするための、 pip のラッパーにすぎません。要件ファイルのインストールと使用は簡単です。ラッパーがあるため、特定の方法で表現する必要があります。 pip コマンドの '-r ' の直後にファイル名を続ける必要があります。これを確実にするには、 jpipの 'package' 文字列パラメータと一緒に配置する必要があります。以下のコードは、JMP 18.0 以降で動作するはずです。これらの例は、JMP 19 のスクリプト インデックスにあります。
JSLより
Names Default To Here(1);
src_path = Pick File(
"Select requirements.txt File",
"$DOCUMENTS",
{"TXT Files|txt", "All Files|*"},
0,
0,
"requirements.txt"
);
If( Host is("Windows"),
src_path = Convert File Path( src_path, windows )
);
Python Send(src_path);
Python Submit("\[
from jmputils import jpip
jpip('install', f'-r {src_path}')
]\");
Pythonから
import jmp
from jmputils import jpip
jmp.run_jsl('''
Names Default To Here( 1 );
src_path = Pick File(
"Select requirements.txt File",
"$DOCUMENTS",
{"TXT Files|txt", "All Files|*"},
0,
0,
"requirements.txt"
);
show(src_path);
If( Host is("Windows"),
src_path = Convert File Path( src_path, windows )
);
show(src_path);
Python Send(src_path);
''')
jpip('install', f'-r {src_path}')