Version: 2019.3
문제 해결
커스텀 패키지 생성

네트워크 문제

진단 툴 사용

Unity 패키지 관리자 진단 툴을 사용하면 Unity 패키지 관리자와 관련된 일반적인 네트워크 문제를 진단할 수 있습니다. 진단 툴은 일반적인 네트워크 문제를 진단하기 위해 Unity 지원 팀이 필요로 하는 몇 가지 기본 네트워크 테스트를 실행합니다. 툴을 실행한 후에는 Unity 지원 팀과 결과를 공유하여 해당 문제를 해결하는 데 도움을 줄 수 있습니다.

Unity 패키지 관리자 오류 다이얼로그를 통해 또는 실행 스크립트를 수동으로 실행하여 Unity 패키지 관리자 진단 툴을 실행할 수 있습니다.

진단 툴이 완료되면 셸 창에 테스트 결과를 표시합니다. 또한 셸 창에서 열 수 있는 로그 파일과 보고서 파일을 작성합니다.

셸 창의 툴 결과 위에 있는 진단 보고서
셸 창의 툴 결과 위에 있는 진단 보고서

Unity 패키지 관리자 진단을 실행한 후 다음을 수행할 수 있습니다.

Unity 패키지 관리자 오류 다이얼로그에서 실행

Unity를 실행하면 프로젝트를 로드하기 전에 패키지 관리자 프로세스를 시작합니다. 패키지 관리자에서 심각한 오류가 발생하면 Unity는 다음 오류 메시지를 표시합니다.

심각한 오류 다이얼로그가 나타나 조치를 요구함
심각한 오류 다이얼로그가 나타나 조치를 요구함

진단 툴을 실행하려면 Diagnose를 클릭하십시오. 그러면 Unity가 진단 툴을 종료한 후 새 창에서 실행합니다.

스크립트를 통한 실행

Unity 설치 폴더의 Diagnostics 폴더에 있는 스크립트를 찾으십시오.

운영체제: 진단 커맨드라인 툴 경로:
Windows <path-to-unity-installation-folder>
   \Unity
      \Data
         \Resources
            \PackageManager
               \Diagnostics
                  \RunUnityPackageManagerDiagnostics.bat
macOS
Linux
<path-to-unity-installation-folder>
   \Unity.app
      \Contents
         \Resources
            \PackageManager
               \Diagnostics
                  \RunUnityPackageManagerDiagnostics

툴을 실행하려면 파일 브라우저에서 스크립트 파일을 두 번 클릭하거나 커맨드 라인에서 실행하십시오.

방화벽 설정

Unity 패키지 관리자가 HTTPS를 사용하여 다음 도메인 이름에 액세스할 수 있도록 하십시오.

  • packages.unity.com
  • download.packages.unity.com
  • upm-cdn.unity.com (또는 중국에 있는 위치의 경우 upm-cdn-china.unitychina.cn)

위 도메인 이름을 방화벽의 허용 도메인 리스트에 추가합니다.

프록시 서버 설정

프록시 서버를 사용하는 경우에는 Unity 패키지 관리자에 대해 HTTP_PROXYHTTPS_PROXY 환경 변수를 설정하여 Unity 패키지 레지스트리에 대한 요청을 수행할 때 사용할 수 있습니다.

이러한 변수(시스템 또는 사용자 변수)는 운영체제에 따라 전역으로 설정할 수 있습니다. 또는 Unity Hub가 시작할 때 Unity Hub에 대해서만 설정할 수도 있습니다.

방화벽 뒤에 있는 환경의 경우 자체 서명 인증서에 대한 SSL 인증서 권한을 설정할 수 있습니다.

자체 서명 인증서

일부 기업과 기관의 경우 사용자들은 방화벽 뒤에 있으며, 프록시를 통해서만 인터넷에 액세스할 수 있습니다. 일부 프록시는 HTTPS 콘텐츠를 언패킹한 후 자체 서명 인증서를 사용하여 다시 패킹합니다. Unity 패키지 관리자의 기본 HTTPS 레이어는 이러한 자체 서명 인증서를 인식하지 못하고 거부하며, 해당 연결을 중간자 공격으로 취급합니다. 즉, 이러한 인증서를 허용하기 위해 추가 SSL 인증서 권한을 설정하지 않는 한 Unity에서 패키지 관리자를 포함한 많은 기능을 사용할 수 없습니다.

추가 SSL 인증서 권한을 설정하려면 다음을 수행하십시오.

  1. 하나 이상의 커스텀 인증서 권한으로 텍스트 파일을 생성합니다. 파일은 프라이버시 강화 우편(PEM) 포맷으로 만든 하나 이상의 신뢰할 수 있는 인증서로 구성되어야 합니다. 다음 예를 참조하십시오.

    -----BEGIN CERTIFICATE-----
    MIIC+zCCAeOgAwIBAgIJAO0U6hVJnbvjMA0GCSqGSIb3DQEBBQUAMBQxEjAQBgNV
    BAMMCWxvY2FsaG9zdDAeFw0xOTAzMTIwMTIxMzRaFw0yOTAzMDkwMTIxMzRaMBQx
    EjAQBgNVBAMMCWxvY2FsaG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
    ggEBAKNh0EM7j57pXorGs5OHzlk9TYeUqITtXXdWfY1fbqRdj+a8qLNs4m/nDsDW
    KgibHYG3FUqIidjPL61DLQuWUPY9Zo+uQaccIe0E5wb+To9mwMlLuhMD6iCPFRpe
    jcDhNj4vG1RVARMO1jupeZqdb+xHBZqtmMJmtiDOBxt662Z4hvoH8mdqNEuSkozz
    HqXmcdigrTO37DspGRBx08GJlHFHUs7C+hYOsOdNjME3dH/8uihjKYiqQb1E12dN
    PNL7jYm3AZv+qUmDFM3BJE0hSmAP00GuTJxbe31Kh4e7N5/XSiLsnqwircOj/Hfi
    eWjtsoXbCNDIiWUQtXBeLD/BdvkCAwEAAaNQME4wHQYDVR0OBBYEFDFw8VDkgMne
    mDjgo+b1iaPfUkdVMB8GA1UdIwQYMBaAFDFw8VDkgMnemDjgo+b1iaPfUkdVMAwG
    A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFEjUWGz1r3xSsbwUJsRhbMc
    M7Jjf9/r833H7eq31mbl/JbXPnpo8IctMuWyw42ccMtgq7i+coQeKwvWnHtI5rhe
    vshEkIqNPAoCnpW5NLprYDDTG1PDEhv6FYpW8Alq65i03tptzaoHlH3sH+97E/h0
    qSYI7yNHWMC5u0r1DB0BR+lZsj6RnwWPySMSuXx5sSiKIS/HkkMVwwmxKa4ZwuwS
    LFwHSUdqk0lJK4b0mCwyTHNvYO1IDziE5EKwfuaKVgOa62iCHVahgIVa+een4EfS
    hCCr3M3cq11Mi+mnRi1scxxrOno4OEEChWg2szZLlxBrkVJllrrq620XJ6RLB/8=
    -----END CERTIFICATE-----
    -----BEGIN CERTIFICATE-----
    MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
    MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
    d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
    b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG
    EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
    cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi
    MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c
    JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP
    mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+
    wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4
    VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/
    AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB
    AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
    BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun
    pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC
    dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf
    fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm
    NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx
    H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
    +o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
    -----END CERTIFICATE-----
    
  2. 이 파일을 가능한 경우 upm-config.json과 동일한 위치에 넣습니다. 단, Unity는 파일 시스템의 모든 위치를 지원합니다.

  3. 시스템 수준의 Unity 설정 폴더에 upm-config.json이라는 빈 JSON 파일을 생성합니다.

    • Windows: %ALLUSERSPROFILE%Unity/config
    • macOS: /Library/Application Support/Unity/config
    • Linux: /usr/share/unity3d/config
  4. upm-config.json 파일에서 PEM 파일의 절대 파일 경로로 설정된 caFile 속성을 추가합니다. 다음 예를 참조하십시오.

    {
      "caFile": "C:\\ProgramData\\Unity\\config\\cert.pem"
    }
    

Unity Hub에 대한 환경 변수 설정

이 섹션에서는 Windows 커맨드 프롬프트 또는 macOS 또는 Linux 터미널에서 실행할 수 있는 커맨드 파일을 만들기 위한 지침을 제공합니다. 또는 커맨드를 프롬프트에서 터미널 창으로 직접 복사하여 붙여넣을 수도 있습니다.

참고 커맨드 파일을 실행하기 전에는 허브를 완전히 종료하십시오. 허브가 이미 실행 중이면 재실행 없이 스크립트가 포커스를 허브로 전환하기 때문에 변경된 프록시 설정이 적용되지 않습니다.

Windows

여기에 나온 지침을 참조하여 Windows에서 커맨드 파일을 만들 수 있습니다.

파일은 환경 변수가 설정된 상태에서 허브를 실행합니다. 파일을 더블 클릭하거나 커맨드 프롬프트에서 호출할 수 있습니다. Unity는 이러한 환경 변수를 허브에서 실행된 Unity 에디터 프로세스로 전달합니다.

  1. Notepad와 같은 텍스트 편집기를 엽니다.

  2. 다음 텍스트를 입력하여 proxy-url을 올바른 프록시 서버 URL로 교체한 후 필요에 따라 허브 설치 경로를 조정합니다.

    @echo off
    set HTTP_PROXY=proxy-url
    set HTTPS_PROXY=proxy-url
    start "" "C:\Program Files\Unity Hub\Unity Hub.exe"
        
    

    참고: 경로에 공백이 포함될 경우 프로그램 경로를 쌍따옴표로 묶어야 합니다.

  3. 파일을 쉽게 찾을 수 있는 위치(예: Desktop)에 저장하고 파일에 .cmd(예: launchUnityHub.cmd)가 있는지 확인합니다.

macOS

여기에 나온 지침을 참조하여 macOS에서 launchUnityHub.command 파일을 만들 수 있습니다.

파일은 환경 변수가 설정된 상태에서 허브를 실행합니다. 파일을 더블 클릭하거나 Bash 터미널에서 호출할 수 있습니다. Unity는 이러한 환경 변수를 허브에서 실행된 Unity 에디터 프로세스로 전달합니다.

참고: 커맨드 파일을 더블 클릭하면 Terminal 창 또는 탭이 열리며, 스크립트가 완료된 후에도 열린 상태로 유지됩니다. Terminal.app에 대한 환경 설정에서 이 동작을 변경할 수 있습니다.

  1. Terminal 창을 엽니다.

  2. 다음 스크립트를 입력하여 proxy-url을 올바른 프록시 서버 URL로 교체한 후 필요에 따라 허브 설치 경로를 조정합니다.

    echo '#!/bin/bash
    export HTTP_PROXY=proxy-url
    export HTTPS_PROXY=proxy-url
    nohup "/Applications/Unity Hub.app/Contents/MacOS/Unity Hub" &>/dev/null &' > launchUnityHub.command
    chmod +x launchUnityHub.command
    

    참고: 경로에 공백이 포함될 경우 프로그램 경로를 쌍따옴표로 묶어야 합니다.

  3. launchUnityHub.command 파일을 쉽게 찾을 수 있는 위치(예: Desktop)로 옮깁니다.

문제 해결
커스텀 패키지 생성