Unity:The type of namespace ‘aaa’ could not be found ~ エラーメモ

Unityでよくやるやつ

using UnityEngine.UI;

などでやりがち。

今回は自分で定義したnamespaceでエラーが出たのでメモ。
故意ではなく

namespace A{
public class A : MonoBehavior{
public enum C{
D,
E,
F
};

}
}

みたいなことをして一回UnityEditorの方でコンパイルしてしまった後にファイルとnamespaceが同じだとやばそうだからnamespace をAからBにかえた。

namespace B{
public class A : MonoBehavior{
public enum C{
D,
E,
F
};
}
}

しかしUnityEditorの方は以前のnamespaceを引きずっていて別のところから

using B;

しても
namespace Bが参照されずA.Cは存在しませんみたいな感じになった。
UnityEditorでAssetsからRefreshしてもなおらなかった。

VisualStudioで表示からオブジェクトブラウザを見るとAというnamespace(ファイルはある)は存在せずBというnamespaceのなかにAは収まっていた。

VisualStudioの方でUnityにアタッチというボタンを押して無理やり通した。
とりあえずなおったけどもっとやりやすい方法があってほしい。

そもそもnamespaceは衝突を回避するためにあるのに自ら衝突を引き起こしてどうする。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA