以下のようなエラーメッセージで質問が投稿されています。
sf plugins install @salesforce/sfdx-scanner@latest-beta
ところで、このsfdx-scannerってなんだろう?
ソースコードの静的解析を、複数の言語(Apexを含む)で、一貫したコマンドラインインターフェースとレポート出力で実現する統一ツールです。
この拡張機能を使用すると、VS Code が Code Analyzer を使用してコードを操作できます。PMD および RetireJS エンジンに Salesforce Graph Engine を使用してスキャンを実行し、違反のリストを生成してコードを改善します。
Salesforce Code Analyzer VS Code 拡張機能 (ベータ) をインストールするには、まず Salesforce CLI をインストールします。続いて、ターミナルで sfdx plugins:install @salesforce/sfdx-scanner を実行します。
The engin "node" is incompactible with this module
fsdx-scanner eslint@8.57: This version is no longer supportd
error found incompactible module
@oclift/core@3.27.0: The engin "node" is incompactible with this module
◆原因
「Salesforce CLIとして」インストールされているnodeのバージョンが古い状態だった。
◆対応
Salesforce CLIをアンインストール→再インストールし、
コードアナライザーのインストールを試行。
コードアナライザーをインストールする
Salesforce Code Analyzer v3.x をインストールするには、このコマンドを実行します。
$ sf plugins install @salesforce/sfdx-scanner
コード アナライザーの最新の GA バージョンを具体的にインストールすることもできます。
$ sf plugins install @salesforce/sfdx-scanner@latest
Code Analyzer v4.x (ベータ版) をインストールするには、このコマンドを実行します。
$ sf plugins install @salesforce/sfdx-scanner@latest-beta
検討
このプラグイン本体の問題ではない?しかし解決策は分かりません。
- SF Package Install Warn - @salesforce/plugin-packaging different from the version specific by sf - Type Error - this.config.plugins.filter is not a fn
- Warning: Plugin @salesforce/plugin-packaging (2.1.10) differs from the version specified by sf (2.1.12)
CPDPについて
PMD に同梱されている CPD は、ファイル間で重複するブロックを識別するのに役立ちます。
最小トークンは環境変数「SFDX_SCANNER_CPD_MINIMUM_TOKENS」で設定できます。Macの場合は「export SFDX_SCANNER_CPD_MINIMUM_TOKENS=120」のように実行します。Windowsの場合はPowerShellで「$env:SFDX_SCANNER_CPD_MINIMUM_TOKENS = 120」のように実行します。