Dependency를 포함하여 nuget 패키지를 다운로드하는 방법

온라인 피드에 접근할 수 없는 오프라인 환경에서 사용하기 위하여 nuget 패키지를 다운로드하는 경우 UiPath 공식 문서에서 가이드하는 대로 Nuget Package Explorer를 사용할 수 있습니다만, 다운로드 하려는 패키지가 다른 패키지들에 대한 dependency가 있는 경우 nuget.exe를 사용하면 dependent 패키지들까지 함께 다운로드할 수 있습니다.

nuget.exe는 UiPath Studio와 함께 설치되기 때문에 그것을 사용해도 되고, 별도로 다운로드하려면 최신 버전을 여기에서 다운로드할 수 있습니다. 이전 버전이 필요한 경우 여기에서 볼 수 있습니다.

nuget.exe의 경로를 시스템 또는 계정의 환경 변수 Path에 추가해두면 커맨드에서 사용할 때 full path를 명시하지 않아도 되기 때문에 편리합니다. 아래와 같이 윈도우즈에서 환경 변수 편집을 열고

Path 변수를 선택하여 ‘편집(E)…’ 버튼을 클릭한 후 nuget.exe 파일을 담고있는 폴더의 경로를 추가해줍니다. 아래의 예에서는 경로가 C:\Users\minoh\AppData\Local\Programs\nuget 입니다.

환경 변수를 수정한 후에는 로그아웃한 후 다시 로그인해야 수정한 내용이 반영됩니다.

패키지를 다운로드하기 전에 먼저 패키지를 받아올 수 있는 피드들을 확인할 필요가 있습니다. 윈도우즈 커맨드 창을 열고 아래의 커맨드를 실행하면 됩니다. ("dotnet nuget" 커맨드를 실행하려면 Microsoft .NET SDK가 설치되어 있어야 합니다. 윈도우즈용 6.0 버전을 여기에서 다운로드할 수 있습니다.)

dotnet nuget list source

만약 UiPath 공식 피드가 목록에 없다면 아래와 같이 추가할 수 있습니다.

dotnet nuget add source --name “UiPath Official Feed” “https://pkgs.dev.azure.com/uipath/Public.Feeds/_packaging/UiPath-Official/nuget/v3/index.json

패키지 다운로드를 위하여 빈 폴더가 필요합니다. nuget_download라는 폴더를 사용하기로 하겠습니다.

패키지를 다운로드하려면 패키지의 이름과 버전을 정확히 알아야 하는데, Nuget Package Explorer를 사용하여 확인할 수 있습니다. Microsoft Store에서 Nuget Package Explorer를 찾아 설치하고 실행합니다.

“Open a package from online feed (Ctrl+G)” 메뉴를 선택하여 “Select Package” 창을 연 후 오른쪽 "Package source:"에서 원하는 피드를 선택합니다. 드롭다운에 원하는 피드가 없다면 직접 입력하면 됩니다.

이제 검색창에 패키지 이름의 일부만 입력해도 찾아볼 수 있습니다. "IntelligentOCR"을 입력하여 패키지를 검색하면 아래와 같습니다.

이렇게 패키지의 이름과 버전을 파악하고 나면 아래의 커맨드로 dependency와 함께 다운로드할 수 있습니다.

nuget.exe install package_name -version version -OutputDirectory path_to_output_directory

IntelligentOCR 패키지를 nuget_download 폴더에 다운로드하는 커맨드는 아래와 같습니다.

nuget.exe install UiPath.IntelligentOCR.Activities -version 6.9.5 -OutputDirectory C:\Users\minoh\nuget_download

-version’ 옵션을 명시하지 않으면 최신 버전을 받아오고, ‘-OutputDirectory’ 옵션을 명시하지 않으면 다운로드한 패키지들을 current directory에 저장합니다.

다운로드된 각 패키지들은 아래와 같이 각자 자신의 폴더에 저장됩니다. 각 폴더에서 .nupkg 파일만 모아서 오프라인 환경으로 가져가면 됩니다.

2 Likes