지시 파일을 사용하여 프로그래밍 방식으로 기본 설정 구성
적용 대상:Visual Studio
Mac용 Visual Studio
Visual Studio Code
Visual Studio 지시 파일은 명령줄 매개 변수 및 인수가 미러링된 JSON 파일입니다. 지시 파일은 클라이언트에 대한 제품의 초기 설치 중에 설정을 초기화하는 데 사용됩니다.
자동 설치
Visual Studio를 배포하는 관리자는 다음 예제와 같이 --in
매개 변수를 사용하여 지시 파일을 지정할 수 있습니다.
vs_enterprise.exe --in customInstall.json
지시 파일의 내용
지시 파일은 명령줄 매개 변수를 캡슐화하며 다음과 같은 일반 규칙을 따릅니다.
- 명령줄 매개 변수가 인수를 받지 않으면(예:
--quiet
,--passive
등) 지시 파일의 값은 true/false여야 합니다. - 매개 변수가 인수를 받으면(예:
--installPath <dir>
) 지시 파일의 값은 문자열이어야 합니다. - 매개 변수가 인수를 받으며 명령줄에서 두 번 이상 나타날 수 있으면(예:
--add <id>
) 지시 파일의 값은 문자열 배열이어야 합니다.
매개 변수가 여러 입력을 받는 경우(예: --add
)를 제외하고, 명령줄에 지정된 매개 변수는 지시 파일에 포함된 설정을 재정의합니다. 여러 입력을 사용하는 경우 명령줄에 지정한 입력이 지시 파일의 설정과 병합됩니다.
네트워크 레이아웃과 함께 사용되는 지시 파일 구성
--layout
명령을 사용하여 네트워크 레이아웃을 만든 경우, 초기 기본 vanilla response.json
파일이 레이아웃 폴더의 루트에 생성됩니다. 관리자는 레이아웃의 이 response.json
파일을 수정하여 클라이언트가 해당 레이아웃에 있는 부트스트래퍼를 호출하여 클라이언트에서 Visual Studio를 설치 또는 업데이트할 때 사용할 설정을 제어할 수 있습니다.
response.json
파일의 구성 설정은 클라이언트가 레이아웃에 있는 부트스트래퍼를 사용하는 경우에만 참조되고 사용됩니다. 클라이언트가 로컬에서 업데이트를 호출하는 경우에는 레이아웃에 있는 response.json
이 사용되지 ‘않습니다’.
관리자가 부분 레이아웃을 만든 경우, 기본 response.json
파일은 부분 레이아웃에 포함된 워크로드와 언어만 지정합니다.
클라이언트가 초기 설치를 수행할 때 --quiet
모드를 사용하지 않았다고 가정할 경우, 초기 설치를 실행하는 사용자는 실제로 설치가 진행되기 전에 response.json
에 지정된 기본값을 재정의하고 설정 UI에서 추가로 워크로드를 선택하거나 선택 취소할 수 있습니다. 사용자가 레이아웃에 없는 구성 요소나 워크로드를 선택할 경우, response.json
의 channelURI가 Microsoft 호스트 서버를 가리킨다면 Visual Studio 설정은 인터넷에서 패키지를 가져오려고 시도합니다.
Visual Studio 설정이 레이아웃 폴더에서 실행된 경우, 설정은 ‘자동으로’ 레이아웃 폴더에 있는 response.json
파일을 사용합니다. --in
옵션을 사용할 필요가 없습니다.
경고
레이아웃이 만들어질 때 정의된 response.json
의 속성을 삭제하지 않는 것이 중요합니다. 값을 변경하는 것은 가능하지만 항목을 제거해서는 안 됩니다.
레이아웃의 기본 response.json
파일은 다음 예제와 유사하며, 여기에 설치할 제품 및 채널에 대한 값이 더 포함됩니다.
{
"installChannelUri": ".\\ChannelManifest.json",
"channelUri": "https://aka.ms/vs/16/release/channel",
"installCatalogUri": ".\\Catalog.json",
"channelId": "VisualStudio.16.Release",
"productId": "Microsoft.VisualStudio.Product.Enterprise"
}
{
"installChannelUri": ".\\ChannelManifest.json",
"channelUri": "https://aka.ms/vs/17/release/channel",
"installCatalogUri": ".\\Catalog.json",
"channelId": "VisualStudio.17.Release",
"productId": "Microsoft.VisualStudio.Product.Enterprise"
}
{
"installChannelUri": ".\\ChannelManifest.json",
"channelUri": "https://aka.ms/vs/17/release.ltsc.17.0/channel",
"installCatalogUri": ".\\Catalog.json",
"channelId": "VisualStudio.17.Release.LTSC.17.0",
"productId": "Microsoft.VisualStudio.Product.Enterprise"
}
레이아웃을 만들거나 업데이트하면 response.template.json 파일도 만들어집니다. 이 파일에는 사용할 수 있는 모든 워크로드, 구성 요소 및 언어 ID가 포함됩니다. 이 파일은 사용자 지정 설치에 포함할 수 있는 모든 항목에 대한 템플릿으로 제공됩니다. 관리자는 이 파일을 사용자 지정 지시 파일을 만들기 위한 기준으로 삼을 수 있습니다. 설치하지 않으려는 항목의 ID를 제거하고 response.json
파일이나 자체 지시 파일에 저장합니다. response.template.json 파일의 경우 레이아웃이 업데이트되면 변경 내용이 손실되므로 사용자 지정하지 마세요.
사용자 지정 레이아웃 지시 파일의 내용 예제
다음 response.json
예제 파일은 여러 공통 워크로드 및 구성 요소를 선택하고, 영어 및 프랑스어 UI 언어를 선택하고, 업데이트 위치가 레이아웃에서 소스를 찾도록 구성하도록 Visual Studio Enterprise 클라이언트 설치를 초기화합니다. Visual Studio 2019의 경우 업데이트 위치(channelURI)는 초기 설치 중에만 구성할 수 있으며, 최신 설치 관리자에서 기능을 사용하는 경우가 아닌 이상 설정한 후에는 더 이상 변경할 수 없습니다. 이 구성 방법에 대한 자세한 내용은 Visual Studio의 엔터프라이즈 배포에 대한 정책 구성및 항상 포함하도록 레이아웃 구성을 참조하고 최신 설치 관리자를 제공합니다 .
{
"installChannelUri": ".\\ChannelManifest.json",
"channelUri": "\\\\server\\share\\layoutdirectory\\ChannelManifest.json",
"installCatalogUri": ".\\Catalog.json",
"channelId": "VisualStudio.16.Release",
"productId": "Microsoft.VisualStudio.Product.Enterprise",
"installPath": "C:\\VS2019",
"quiet": false,
"passive": false,
"includeRecommended": true,
"norestart": false,
"addProductLang": [
"en-US",
"fr-FR"
],
"add": [
"Microsoft.VisualStudio.Workload.ManagedDesktop",
"Microsoft.VisualStudio.Workload.Data",
"Microsoft.VisualStudio.Workload.NativeDesktop",
"Microsoft.VisualStudio.Workload.NetWeb",
"Microsoft.VisualStudio.Workload.Office",
"Microsoft.VisualStudio.Workload.Universal",
"Component.GitHub.VisualStudio"
]
}
다음 response.json
예제 파일은 여러 공통 워크로드 및 구성 요소를 선택하고, 영어 및 프랑스어 UI 언어를 선택하고, 클라이언트가 업데이트될 때 지원되지 않는 구성 요소를 항상 제거하고, 업데이트 위치가 레이아웃에서 소스를 찾도록 구성하도록 Visual Studio Enterprise 클라이언트 설치를 초기화합니다. 지원되지 않는 구성 요소의 목록은 여기를 참조하세요.
{
"installChannelUri": ".\\ChannelManifest.json",
"channelUri": "\\\\server\\share\\layoutdirectory\\ChannelManifest.json",
"installCatalogUri": ".\\Catalog.json",
"channelId": "VisualStudio.17.Release",
"productId": "Microsoft.VisualStudio.Product.Enterprise",
"installPath": "C:\\VS2022",
"quiet": false,
"passive": false,
"includeRecommended": true,
"norestart": false,
"removeOos": true,
"addProductLang": [
"en-US",
"fr-FR"
],
"add": [
"Microsoft.VisualStudio.Workload.ManagedDesktop",
"Microsoft.VisualStudio.Workload.Data",
"Microsoft.VisualStudio.Workload.NativeDesktop",
"Microsoft.VisualStudio.Workload.NetWeb",
"Microsoft.VisualStudio.Workload.Office",
"Microsoft.VisualStudio.Workload.Universal"
]
}
문제 해결
response.json
파일과 함께 사용할 때 Visual Studio 부트스트래퍼에서 오류가 throw하는 문제가 발생할 경우 자세한 내용은 Visual Studio 설치 또는 사용 시의 네트워크 관련 오류 문제 해결 페이지를 참조하세요.
지원 또는 문제 해결
때로는 무엇인가 잘못될 수도 있습니다. Visual Studio 설치에 실패하는 경우 단계별 지침은 Visual Studio 설치 및 업그레이드 문제 해결을 참조하세요.
몇 가지 추가 지원 옵션은 다음과 같습니다.
- 설치 관련 문제를 위한 설치 채팅(영어만 가능) 지원 옵션이 제공됩니다.
- Visual Studio 설치 관리자와 Visual Studio IDE에 모두 표시되는 문제 보고 도구를 통해 Microsoft에 제품 문제를 보고합니다. IT 관리자이고 Visual Studio가 설치되어 있지 않은 경우 여기에서 IT 관리자 피드백을 제출할 수 있습니다.
- Visual Studio 개발자 커뮤니티에서 기능을 제안하고, 제품 문제를 추적하고, 답변을 찾습니다.