Clojure 用のサードパーティ ライブラリを作成しています。このライブラリのコアでは、オペレーティング システムからスクリプトを実行する必要があります。この場合、このファイルへの絶対パスをこのように使用することはできません/Users/me/src/clojure-pymorphy/src/pymorphy/pymorphy.py
。
しかし、相対パスを使用するscript/script.py
と、スクリプトの場所が間違っていると判断される場合があります。この clojure ライブラリを実行/使用するディレクトリによって異なります。このライブラリはサードパーティとして配布されるため、script.py
Clojure ソース コードからのパスを特定する方法が必要です。
プロジェクト フォルダは次のようになります。
clojure-pymorphy/
src/
pymorphy/
pymorphy.py
pymorphy.clj
スクリプトpymorphy.py
は から呼び出されpymorphy.clj
ます。ファイルpymorphy.clj
は次の行から始まります。
(ns pymorphy
(:import (java.util ArrayList)
(jep Jep)))
pymorphy
実行時に名前空間へのディレクトリを決定し、単純に追加する方法があるかどうかを調べようとしまし"pymorphy/pymorphy.py"
た。しかし、何時間もグーグルで調べた後、それは不可能であるという結論に達しました。
実行時に clojure 名前空間へのパスを動的に決定する他の方法はありますか?
どうもありがとう。