Fout bij het bouwen van een project: fout bij het bouwen van Player omdat scripts compileerfouten bevatten in de editor

Ik heb de plug-in Tiled2Unity. Wanneer ik begin met het bouwen van een versie van mijn spel in Unity, of het nu een zelfstandige versie is of iets anders, krijg ik de volgende foutmelding: “Fout bij het bouwen van Player omdat scripts compileerfouten bevatten in de editor”

Dan verwijst het me naar deze klas

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UnityEditor;
namespace Tiled2Unity
{
    public class CircleObject : TmxObject
    {
    }
}

Kan iemand me helpen uitzoeken wat het probleem is?


Antwoord 1, autoriteit 100%

U kuntuw script dat using UnityEditor;of class/API van de UnityEditornaamruimte. Daarom moet je elk script dat een van deze bevat in een map met de naam Editorplaatsen.

Als Unity je project aan het bouwen is, negeert het alle scripts die in deze map zijn geplaatst, omdat ze worden beschouwd als een editorscript of plug-in.

Je hebt drie keuzes:

  1. Verwijder using UnityEditor;uit je script.

  2. Plaats je script in een map met de naam Editor.

  3. Gebruik de preprocessor-richtlijn van Unity om te bepalen wanneer niet moet worden gecompileerd met using UnityEditor;

    U kunt dat doen door het volgende te vervangen:

    using UnityEditor;
    

    met

    #if UNITY_EDITOR 
     using UnityEditor;
     #endif 
    

Ik zou met # 2 gaan. Maak een ander script voor elke editor-dingen en plaats deze in de map Editor . Merk op dat Unity niet Compileer elk script in deze map bij het bouwen van uw project. Scripts in deze map zijn bedoeld om alleen in de editor te worden uitgevoerd.


Antwoord 2

Ik had hetzelfde probleem echter gemakkelijk een oplossing gevonden.

Ga naar elk script dat u hebt in dat eenheidsproject en controleer de eerste regels, degenen die zeggen “het gebruik van Unityengine” en “Unity System Collections”. Ik had echter alleen aan deze regels toegevoegd met een “met behulp van Unityengine.ui”, maar toen ik al mijn scripts voor dat project doormaakte, vond ik dat er een paar extra degenen daar die daar niet waren toen ik begon en ik had niet toegevoegd ( Ze voegden zichzelf eraan), bijvoorbeeld was er een “met behulp van systeemcollecties XMP” of zoiets willekeurig. Verwijder deze, sla het script op en je moet goed zijn om te gaan.

Ik heb geen idee waarom ze er zijn en welk type probleem ze leken te veroorzaken, maar ik kan nu mijn project op Android-probleem nu gratis bouwen.

Other episodes