Download Paket NuGet Beserta Dependensi

Pendahuluan

Ketika Anda sedang mengembangkan aplikasi atau proyek dengan menggunakan platform .NET, Anda mungkin memerlukan fungsionalitas yang telah diimplementasikan sebelumnya oleh orang lain. Alih-alih membangun ulang semua komponen tersebut, Anda dapat menggunakan paket-paket yang sudah ada di NuGet. Ini menghemat waktu dan usaha dalam pengembangan, karena Anda dapat mengintegrasikan fungsionalitas yang kompleks dengan mudah.

Untuk menggunakan paket-paket dari NuGet, Anda perlu menambahkan rujukan (references) ke proyek Anda dan mendownload paket-paket tersebut beserta dependensinya.

Namun jika Anda sedang dalam kondisi offline atau tidak ada jaringan internet, hal ini menjadi satu kendala tersendiri.

Solusinya Anda dapat mendownload paket-paket NuGet dan dependensinya di komputer dengan koneksi internet dan menyimpannya secara lokal. Kemudian, Anda dapat mengimpor paket-paket ini ke proyek Anda dengan cara menunjukkan direktori lokal sebagai sumber paket NuGet.

Untuk mendownload paket-paket ini Anda bisa menggunakan aplikasi NuFetch yang bisa didownload dari link berikut

Download : NuFetch

NuFetch

NuFetch -p <packageid> [-s <sourceserver>] [-v <packageversion>] [-t <targetfolder>] [-o] [-i]

  -s, --source             (Default: https://www.nuget.org/api/v2/) NuGet repository source server URL

  -p, --pid                Required. Package Id to download

  -v, --version            (Default: ) Package Version to download; do not mention this parameter to donwload the latest version

  --depVerType             (Default: Min) Dependency version to download (Min or Max version)

  -t, --targetFolder       (Default: Packages) Target folder path to download the packages

  -o, --overwrite          (Default: False) Flag to overwrite existing file matching a package version

  -i, --includePrelease    (Default: False) Flag denoting if the downloader should include prerelease when searching for package

  -a, --allowUnlisted      (Default: False) Flag denoting if the downloader should search for package in unlisted packages

  --help                   Display this help screen.

Penggunaan

  1. Extract file NuFetch yang sudah kita download
  2. Buka command prompt
  3. Masuk ke folder NuFetch
  4. Jalankan program seperti dibawah untuk mendownload paket Microsoft.EntityFrameworkCore dan Scrutor beserta dependensinya.
NuFetch -p Microsoft.EntityFrameworkCore -v 6.0.6 -t D:\NUGET

NuFetch -p Scrutor -t D:\NUGET

Dibawah ini kita akan membuat script batch untuk mendownload lebih dari satu paket berikut dependensinya secara bersamaan.

  1. Buat file dengan nama nu.bat didalam folder NuFetch
  2. Edit file dengan script berikut
@echo off

:: NuFetch Downloader Batch Script
:: Author : Victor P Limbong

setlocal enabledelayedexpansion

set package[0]=AForge.Imaging.NetStandard
set package[1]=AForge.Math.NetStandard
set package[2]=AForge.NetStandard
.
.
.
set package[xxx]=Nama.Paket

for /L %%i in (0,1,xxx) do (
    NuFetch -p !package[%%i]! -t D:\nuget
)

Penjelasan :
set package[xxx]=Nama_Paket

  1. xxx = angka berurut dari 0 sampai angka xxx
  2. Nama.Paket = nama paket yang ingin anda download
  3. D:\nuget = nama folder dapat anda sesuaikan

Untuk menjalankan script anda tinggal mengklik 2x file nu.bat tunggu sampai windows command prompt tertutup sendiri, berarti proses download sudah selesai.