Не удается добавить компонент скрипта, потому что класс скрипта не найден?
Вчера я обновил единство с единства 5 до 2018.2.2f1. Скрипты Unity не загружаются после обновления 2018.2.2f1.
Как только я пытаюсь воспроизвести сцену, сценарии не загружаются, и я не могу снова добавить сценарий, выдает эту ошибку:
Can’t add script component ‘CubeScript’ because the script class cannot be found. Make sure that there are no compile errors and that the file name and class name match.



Если у вас все еще есть старая копия проекта, сначала обновите проект Unity до Unity 2017 , а затем до 2018.2.2f1 .
Вот несколько возможных причин, по которым вы можете получить эту ошибку (заказано с большой вероятностью)
1. Имя сценария не соответствует имени класса.
Если вызывается имя сценария MyClass , имя класса должно быть MyClass . Это также чувствительно к регистру. Дважды проверьте, чтобы убедиться, что это не проблема. Чтобы убедиться, что проблема не в этом, скопируйте имя класса и вставьте его в качестве имени скрипта, чтобы убедиться, что проблема не в этом.
Обратите внимание, что если у вас есть несколько классов в одном сценарии, имя класса, которое должно совпадать с именем сценария, — это класс, производный от MonoBehaviour .
2. В вашем скрипте ошибка. Поскольку это обновление, есть вероятность, что вы используете API, который сейчас устарел и удален. Откройте свой скрипт с помощью Visual Studio и посмотрите, есть ли там ошибка, а затем исправьте ее. Обычно под кодом имеется красная линия, указывающая на наличие ошибки.
3. Плохой импорт с помощью импортера Unity и его сценария автоматического обновления.
О. Первое, что нужно сделать, это перезапустить редактор Unity.
B. Щелкните правой кнопкой мыши вкладку «Проект», затем выберите «Повторно импортировать все».
C. Если проблема все еще существует, остается только удалить проблемный скрипт и создать новый. Есть более простой способ сделать это, если скрипт прикреплен ко многим игровым объектам в вашей сцене.
A. Откройте скрипт, скопируйте его содержимое в блокнот.
B. В редакторе и на вкладке « Проект » щелкните правой кнопкой мыши сценарий «CubeScript», выберите «Найти ссылки в сцене» .
C .Unity теперь будет отображать только те игровые объекты, к которым прикреплен этот скрипт. Удалите старый скрипт. Создайте новый, затем скопируйте содержимое из блокнота в этот новый скрипт. Теперь вы можете просто перетащить новый скрипт на все отфильтрованные игровые объекты в сцене. Сделайте это для каждого скрипта. Это ручная работа, но она должна исправить ваши проблемы после завершения.
Как исправить ошибку can t add script
Reproduction steps:
1. Create a new script.
2. Change the filename of that script.
3. Add script to an object in the scene.
Expected error message: «Can’t add script component ‘NewBehaviourScript’ because the script class cannot be found. Make sure that there are no compile errors and that the file name and class name match.»
Actual error message: «Can’t add script behaviour VisualContainerAsset. The script needs to derive from MonoBehaviour!»
Reproduced: 2018.1.0a5, 2018.1.0f1
Not reproducible: 2017.1.3p1, 2017.2.1p3, 2017.3.1f1, 2018.1.0a4, 2018.2.0b1
Cant add script component. Script Class cannot be found.
It’s a bit difficult to diagnose without seeing your code and directory structure of your Scripts folder, but I would start by double-checking that the script file and the class inside it are both named «RandomSoundPlayer» without any typos and that the class compiles without errors.
bryson thornton
bryson thornton
thanks. it worked
Tojo Alex
Tojo Alex
thanks i had same issue
Posting to the forum is only allowed for members with active accounts.
Please sign in or sign up to post.