🔧

asmdefをいじった後にRiderの調子が悪い時の対処法

2022/01/21に公開

unityから(またはRiderから直接) asmdef ファイルを編集した後、コンパイルエラーは出ていないのに、追加したはずの assembly のクラスが Rider の候補に出てこなくなる場合がままあり、対処法ぽいのを確立したので記事化しました。

筆者環境

windows 10
unity 2021.2.8f1
Rider 2021.3.1
(Visual Studio でも同様かもしれませんが未検証です)

対処法

  1. コメントアウトなどを駆使してコンパイルエラーが出ないようにする
  2. unity の relode script assemblies を待つ
  3. unity の Edit > Preferences > External Tools から [Regenerate project files] をクリック
  4. Rider の読み込みが始まるので待つ
  5. Rider から候補が出るようになる(はず)

試したけどダメだったこと

  • unity を再起動
  • Rider を再起動
  • Rider でソリューションのリビルド
  • コンパイルエラーがある状態で [Regenerate project files]

宣伝

この記事にたどり着くくらい asmdef を使っているあなたにおすすめのOSSがあります。
https://github.com/naninunenoy/AsmdefHelper

asmdef を使う上でちょっと不便なことが解消します。

  • asmdef 生成時にパラメータ指定
  • asmdef リネーム時にファイル名と NameRootNamespace を指定
  • 複数の asmdef を選択して並列で編集
  • asmdef の依存関係を可視化

Discussion