MPS 2020.1 ヘルプ


モジュール依存関係ツールを使用すると、モジュールまたは一連のモジュールのすべての依存関係と使用言語を概説し、潜在的な循環依存関係を検出したり、依存関係を形成する詳細なパスを確認したりできます。このツールは、1 つ以上のモジュールが選択されているときにメニューからもプロジェクトペインからも呼び出すことができます。



モジュール依存関係ツール shows all transitive dependencies of the modules in the left panel: Optionally, it can also display all directly or indirectly used languages: It is possible to expand any dependency node and get all dependencies of the expanded node as children: These will again be transitive dependencies, but this time for the expanded node.

左側のパネルで 1 つ以上のディペンデンシーノードを選択します。右側のパネルには、その「親」モジュールから選択した各モジュールへのパスが表示されます。右側のツリーで、モジュール間の各関係の簡単な説明を見ることができます。依存関係の型は、に依存し、言語を使用ランタイムをエクスポートします が devkit などを使用しています。便宜上、ターゲットの依存モジュールの名前は太字で示されています。


There are two types of dependency paths: 依存 and 使用言語 . The L button in the toolbar enables/disables displaying of 使用言語 in the left tree panel: When you select a module in the 使用言語 folder in the left tree, the right tree shows only the dependency paths that introduce the used language relation for the given module: To show "ordinary" dependencies on a language module, you should select it outside of the 使用言語 folder (e.g: the jetbrains.mps.lang.core language in the picture below). It is also possible to select multiple nodes (e.g: the same language dependency both inside and outside of the 使用言語 folder). In that case you get a union of results for both paths.


When you are using a language that comes with its own libraries, those libraries are typically not needed to compile your project: It is the runtime when the libraries must be around for your code to work: For tracking runtime dependencies in addition to the "compile-time visible" ones, you should check the ランタイム option in the toolbar: The runtime dependencies are marked with a "runtime" comment.


The modules in the left tree that participate in dependency cycles are shown in red color: It is possible to expand the tree node to see the paths forming the cycle: