Microsoft MVP성태의 닷넷 이야기
.NET Framework: 762. .NET Core 2.1 - 확장 도구(Tools) 관리 [링크 복사], [링크+제목 복사]
조회: 2268
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

.NET Core 2.1 - 확장 도구(Tools) 관리

.NET Core 2.1부터,

Announcing .NET Core 2.1
; https://blogs.msdn.microsoft.com/dotnet/2018/05/30/announcing-net-core-2-1/

사용자 정의 Tool을 관리할 수 있는 기능이 생겼습니다. .NET Full Framework과 비교하자면 "C:\Windows\Microsoft.NET\Framework\v4.0.30319" 등의 폴더에 사용자 프로그램을 넣어두는 것과 유사하겠습니다.

사용법은, 역시 NuGet으로부터 배포된 도구를 설치할 수 있는데 가령 "dotnetsay"라는 도구인 경우 다음과 같은 명령어로 설치할 수 있습니다.

C:\>dotnet tool install -g dotnetsay

-g 옵션인 경우 물리적인 설치 경로는 %USERPROFILE%을 기준으로 정해집니다.

%USERPROFILE%\.dotnet\tools\.store\dotnetsay

(* 윈도우의 경우 %USERPROFILE%\.dotnet\tools 폴더에 dotnetsay.exe 파일도 생성됩니다.)

원한다면 -g 옵션 대신 --tool-path 옵션과 함께 경로를 전달해 원하는 로컬 폴더를 지정할 수 있습니다.

C:\>dotnet tool install --tool-path d:\tool\.dotnet dotnetsay
You can invoke the tool using the following command: dotnetsay
Tool 'dotnetsay' (version '2.1.4') was successfully installed.

(* 윈도우의 경우 지정된 d:\tools\.dotnet 폴더에 dotnetsay.exe 파일도 생성됩니다.)

미리 설치된 도구 목록은 list 옵션으로 알 수 있습니다.

C:\>dotnet tool list  --global
Package Id      Version      Commands
--------------------------------------
dotnetsay       2.1.4        dotnetsay

C:\>dotnet tool list --tool-path d:\tool\.dotnet
Package Id      Version      Commands
--------------------------------------
dotnetsay       2.1.4        dotnetsay

참고로 -g 옵션으로 "dotnet tool install" 명령을 해당 시스템에서 처음 실행한 경우에는 다음의 2가지 작업을 하게 됩니다.

1. %USERPROFILE%\.dotnet\tools\ 폴더 생성
2. tools 폴더를 PATH 환경 변수에 등록

이 때문에 "최초 설치" 후 곧바로 dotnetsay.exe를 실행하면 찾지 못하는 경우가 있는데 그럴 때는 명령행 윈도우 창을 새롭게 다시 띄워주면 됩니다.

삭제는 다음의 uninstall 명령으로 할 수 있습니다.

C:> dotnet tool uninstall -g dotnetsay

물론 여러분들도 사용자 정의 도구를 만들어 NuGet에 배포할 수 있습니다. 예제 코드는 github에 공개된 dotnetsay 예제를 참고합니다.

dotnetsay .NET Core Global Tools Sample
; https://github.com/dotnet/core/blob/master/samples/dotnetsay/README.md




더 많은 도구들은 다음의 링크에서 확인할 수 있습니다.

dotnet-tools
; https://github.com/natemcmaster/dotnet-tools/blob/master/README.md

이로써 .NET Core의 도구는 2가지 종류가 되었다고 합니다.

  1. DotNet tools (aka global tools)
  2. DotNetCliToolRef tools (aka project-only tools)

또한 이전 2.0 버전까지는 별도 패키지로 제공되던 아래의 도구들이,

  • dotnet-ef
  • dotnet-sql-cache
  • dotnet-user-secrets
  • dotnet-watch

2.1부터는 기본 내장되었다고 하니 더 이상 따로 설치할 필요가 없게 되었습니다.




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]





[최초 등록일: ]
[최종 수정일: 6/8/2018 ]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer@outlook.com

비밀번호

댓글 쓴 사람
 




... 16  17  18  19  20  21  22  23  [24]  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
11762정성태10/25/20183377사물인터넷: 52. New NodeMcu v3(ESP8266)의 http 통신파일 다운로드1
11761정성태10/25/20183041Graphics: 26. 임의 축을 기반으로 3D 벡터 회전파일 다운로드1
11760정성태10/24/20181581개발 환경 구성: 418. Azure - Runbook 내에서 또 다른 Runbook 스크립트를 실행
11759정성태10/24/20181762개발 환경 구성: 417. Azure - Runbook에서 사용할 수 있는 다양한 메서드를 위한 부가 Module 추가
11758정성태7/6/20202716.NET Framework: 800. C# - Azure REST API 사용을 위한 인증 획득 [3]파일 다운로드1
11757정성태10/23/20182383개발 환경 구성: 416. Visual Studio 2017을 이용한 아두이노 프로그램 개발(및 디버깅)
11756정성태10/19/20182207오류 유형: 500. Visual Studio Code의 아두이노 프로그램 개발 시 인텔리센스가 안 된다면?
11755정성태10/19/20184858오류 유형: 499. Visual Studio Code extension for Arduino - #include errors detected. [1]
11754정성태10/19/20182571개발 환경 구성: 415. Visual Studio Code를 이용한 아두이노 프로그램 개발 - 새 프로젝트
11753정성태10/19/20187673개발 환경 구성: 414. Visual Studio Code를 이용한 아두이노 프로그램 개발
11752정성태10/18/20181698오류 유형: 498. SQL 서버 - Database source is not a supported version of SQL Server
11751정성태10/18/20182061오류 유형: 497. Visual Studio 실행 시 그래픽이 투명해진다거나, 깨진다면?
11750정성태10/18/20181915오류 유형: 496. 비주얼 스튜디오 - One or more projects in the solution were not loaded correctly.
11749정성태10/18/20182118개발 환경 구성: 413. 비주얼 스튜디오에서 작성한 프로그램을 빌드하는 가장 쉬운 방법
11748정성태10/18/20182725개발 환경 구성: 412. Arduino IDE를 Store App으로 설치한 경우 컴파일만 되고 배포가 안 되는 문제
11747정성태10/17/20182562.NET Framework: 799. C# - DLL에도 EXE처럼 Main 메서드를 넣어 실행할 수 있도록 만드는 방법파일 다운로드1
11746정성태10/15/20181904개발 환경 구성: 411. Bitvise SSH Client의 인증서 모드에서 자동 로그인 방법파일 다운로드1
11745정성태10/15/20181965오류 유형: 495. TFS 파일/폴더 삭제 - The item [...] could not be found in your workspace, or you do not have permission to access it.
11744정성태10/15/20181640개발 환경 구성: 410. msbuild로 .pubxml 설정에 따른 배포 파일을 만드는 방법
11743정성태10/15/20181661웹: 37. Bootstrap의 dl/dt/dd 조합에서 문자열이 잘리지 않도록 CSS 설정
11742정성태10/15/20182485스크립트: 13. 윈도우 배치(Batch) 스크립트에서 날짜/시간 문자열을 구하는 방법
11741정성태10/15/20181414Phone: 13. Android - LinearLayout 간략 설명
11740정성태10/15/20182188사물인터넷: 51. Synology NAS(DS216+II)를 이용한 원격 컴퓨터의 전원 스위치 제어
11739정성태10/15/20183314Windows: 151. 윈도우 10의 전원 관리가 "균형 조정(Balanced)"으로 바뀌는 문제
11738정성태4/1/20202395오류 유형: 494. docker - 윈도우에서 실행 시 "unknown shorthand flag" 오류
11737정성태10/13/20181559오류 유형: 493. Azure Kudu - There are 395 items in this directory, but maxViewItems is set to 299
... 16  17  18  19  20  21  22  23  [24]  25  26  27  28  29  30  ...