1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

以下のようなエラーメッセージで質問が投稿されています。

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

image.png

◆原因

 「Salesforce CLIとして」インストールされているnodeのバージョンが古い状態だった。
◆対応

 Salesforce CLIをアンインストール→再インストールし、

 コードアナライザーのインストールを試行。

image.png

なお、retire-js エンジンのこの特定のノードの問題は、今週末にリリースされる Code Analyzer v4 と Code Analyzer v5 の両方で修正される予定です。

ただし、まもなく (数か月以内に) Code Analyzer v4 のサポートが終了する可能性があることにも留意してください。そのため、代わりに新しい code-analyzer cli プラグインである Code Analyzer v5 の使用を開始することをお勧めします。

https://developer.salesforce.com/docs/platform/salesforce-code-analyzer/guide/code-analyzer.html

Code Analyzer v5 では、--rule-selector 引数を使用してルールの選択がはるかに簡単になります。code-analyzer.yml 構成ファイル内で独自のタグを割り当てて、ルールを必要に応じて分類することもできます。

To install v5:

sf plugins install code-analyzer

and then do

sf code-analyzer rulessf code-analyzer runsf code-analyzer config

コードアナライザーをインストールする

Salesforce コードアナライザー設定

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

検討

このプラグイン本体の問題ではない?しかし解決策は分かりません。

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」のように実行します。

なお、今週末 (木曜日の午後) に Code Analyzer v5 (ベータ版) をリリースする予定です。これにより、cpd エンジンの最小トークン引数 (言語ごと) をより細かく制御できるようになります。

code-analyzer.yml ファイル (sfdx プロジェクトのルート フォルダーに配置することをお勧めします) を作成し、エンジンを設定できます。設定オプションの 1 つは次のとおりです。

engines:

  cpd:
    # Specifies the minimum tokens threshold for each rule language.
    # The minimum tokens threshold is the number of tokens required to be in a duplicate block of code in order to be
    # reported as a violation. The concept of a token may be defined differently per language, but in general it is a
    # distinct basic element of source code. For example, this could be language specific keywords, identifiers,
    # operators, literals, and more. See https://docs.pmd-code.org/latest/pmd_userdocs_cpd.html to learn more.
    # If a value for a language is unspecified, then the default value of 100 will be used for that language.

    minimum_tokens:
      apex: 100
      html: 100
      javascript: 100
      typescript: 100
      visualforce: 100
      xml: 100
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?