Version: Unity 6.0 (6000.0)
언어 : 한국어
조건부 어셈블리 포함
어셈블리 정의 프로퍼티 레퍼런스

어셈블리 메타데이터 및 컴파일 세부 정보

어셈블리에 대한 추가 메타데이터를 정의하고 프로젝트 빌드에 포함된 어셈블리에 대한 정보를 가져올 수 있습니다.

어셈블리 속성 설정

어셈블리 속성을 사용하여 어셈블리에 대한 메타데이터 프로퍼티를 설정할 수 있습니다. 일반적으로 어셈블리 속성 설명은 AssemblyInfo.cs라는 이름의 파일에 저장됩니다.

예를 들어 다음 어셈블리 속성은 몇 가지 [.NET 어셈블리 메타데이터 값], [InternalsVisibleTo] 속성(테스트 작업 시 유용), 그리고 프로젝트를 빌드할 때 어셈블리에서 미사용 코드를 제거하는 방식에 영향을 주는 Unity 정의 Preserve 속성을 지정합니다.

[assembly: System.Reflection.AssemblyCompany("Bee Corp.")]
[assembly: System.Reflection.AssemblyTitle("Bee's Assembly")]
[assembly: System.Reflection.AssemblyCopyright("Copyright 2020.")]
[assembly: System.Runtime.CompilerServices.InternalsVisibleTo("UnitTestAssembly")]
[assembly: UnityEngine.Scripting.Preserve]

빌드 스크립트에서 어셈블리 정보 가져오기

CompilationPipeline 클래스를 사용하면 Unity가 프로젝트를 위해 빌드한 모든 어셈블리에 대한 정보를 검색해서 가져올 수 있습니다. 여기에는 어셈블리 정의 에셋에 기반하여 생성된 어셈블리도 포함됩니다.

예를 들어 다음 스크립트는 CompilationPipeline 클래스를 사용하여 프로젝트의 모든 현재 플레이어 어셈블리를 나열합니다.

using UnityEditor;
using UnityEditor.Compilation;
public static class AssemblyLister
{
    [MenuItem("Tools/List Player Assemblies in Console")]
    public static void PrintAssemblyNames()
    {
        UnityEngine.Debug.Log("== Player Assemblies ==");
        Assembly[] playerAssemblies =
            CompilationPipeline.GetAssemblies(AssembliesType.Player);

        foreach (var assembly in playerAssemblies)
        {
            UnityEngine.Debug.Log(assembly.name);
        }
    }
}

추가 리소스

조건부 어셈블리 포함
어셈블리 정의 프로퍼티 레퍼런스