Quantcast
Channel: C#タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8901

【Unity】ファイル名とクラス名が合ってるのにコンパイルエラーで動かなくなる現象の対策法

$
0
0

やらかした

急にUnityが言うことをきかなくなってしまいました。
コンパイルが全く通らなくなりました。
思い当たる直接の原因はUnityを起動した状態のまま、その開いているプロジェクトをコピーしたことです。

検索してもファイル名とクラス名が違う話ばかり…そういうことではないんです。
Unityを再インストールしても症状は変わらず。そんな場合の対策記事です。

環境

  • OS:Windows10 Pro
  • Unityバージョン:2019.2.12.f1

解決策

  • Unityをアンインストールします。
  • Unityのアンインストーラーが削除しないファイルを消します。
  • 新しくWindowsのユーザーを作ります。
  • 再度Unityをインストールします。

出た症状や詳細

起こったことや情報をまとめます。

症状

  • 急にコンポーネントをアタッチできなくなりました。

    • アタッチしようとするとエラーメッセージが出てつけられなくなります。メッセージは Can't add script component 'コンポーネント名' because the script class cannot be found. Make sure that there are no compile errors and that the file name and class name match.
    • image.png
    • スクリプトを選択すると No MonoBehaviour script in the file, or their names do not match the file name.と言うメッセージがインスペクタに表示されます。
    • image.png
  • 空白メッセージの謎のコンパイルエラーが常に発生します。

  • image.png

  • Visual Studio上でも作りたてのスクリプトが using UnityEngineMonoBehaviourの参照を認識しません。

  • アンインストールしようがアプリケーションデータを消そうが再インストールしたら症状が続きます。

もしかして

  • 権限関係が破壊されたのでは、という情報をもらいました。権限が破壊され操作不能になったファイルを含む部分の権限を正しく再設定すればよいのは道理です。ただし検証や修復には莫大な時間がかかるでしょう。私は新しいユーザーを作ることで済ませることにしました。

Viewing all articles
Browse latest Browse all 8901

Trending Articles