본문 바로가기
Azure & Windows/PowerShell

How to fix PowerShell ISE Module Browser installation

by 강철 벼룩 2018. 4. 25.

PowerShell ISE의 모듈 브라우저 확장 설치 문제를 해결하는 방법

PowerShell ISE는 확장성을 제공하는 멋진 통합 개발 환경입니다.

ISE의 [추가 기능] 메뉴에서 ISE 기능을 확장하는 애드온을 설치할 수 있는데, 여기에 버그가 있습니다. 

이 글에서 다루는 <모듈 브라우저>는 통합 스크립팅 환경 내에서 모듈을 다운로드하고 관리할 수 있도록 도와주는 확장 기능입니다.


[모듈 브라우저 추가 기능 도구 가져오기]를 클릭하면 실행 파일을 다운로드하고 설치하게 되는데, 설치가 끝난 후 ISE를 다시 시작해보면, 모듈 브라우저에서 "갤러리의 모듈을 조회하는데 NuGet-anycpu.exe가 필요하므로 다운로드해서 설치하겠냐"는 메시지를 표시합니다.


[Accept] 버튼을 클릭하면, 패키지 공급자 'NuGet'을 찾을 수없다는 메시지와 함께 '초기화 실패' 메시지를 표시합니다.


이 문제의 원인은, 모듈 브라우저는 <PowerShell Gallery>에서 새로운 이름(ISEModuleBrowserAddon)으로 배포하는 버전을 설치해야 하는데, ISE의 메뉴 링크가 변경되지 않은 까닭입니다.


이제, 제대로된 ISE용 모듈 브라우저를 설치하는 방법은 다음의 단계를 따라하세요.

1. 관리자 권한으로 실행한 PowerShell ISE의 콘솔창에서 다음 명령을 실행합니다.

Install-Module -Name ISEModuleBrowserAddon


2. C:\Users\[User Profile]\Documents\WindowsPowerShell 위치에서, Microsoft.PowerShellISE_profile.ps1 파일을 찾아서 편집기로 오픈 합니다.
해당 파일이 없다면, 만들어 주세요.


3. 다음 내용을 추가한 다음 파일을 저장합니다.


#Module Browser Begin
#Version: 1.0.0
Add-Type -Path 'C:\Program Files\WindowsPowerShell\Modules\ISEModuleBrowserAddon\1.0.1.0\ISEModuleBrowserAddon.dll'
$moduleBrowser = $psISE.CurrentPowerShellTab.VerticalAddOnTools.Add('Module Browser', [ModuleBrowser.Views.MainView], $true)
$psISE.CurrentPowerShellTab.VisibleVerticalAddOnTools.SelectedAddOnTool = $moduleBrowser
#Module Browser End


4. 열려 있는 PowerShell ISE를 종료하고 다시 실행하면, 모듈 브라우저가 다음 화면 처럼 제대로 실행됩니다.


5. 추가적으로, ISE의 [추가 기능] 메뉴에 있는 [스크립트 브라우저 추가 기능 도구 가져오기]를 설치하려는 경우, 메뉴를 클릭하면 연결되는 웹 사이트 링크는 깨졌습니다. 따라서 PowerShell Gallery 사이트에 가서 확인하거나, 다음 처럼 검색 상자에서 scriptbrowser를 입력하고 검색해 결과를 확인한 뒤 설치할 수 있습니다.