Jika plugin di JetBrains IDE tidak terinstal, Maven atau pip tidak dapat mengunduh dependensi, dan Marketplace tidak terbuka — kemungkinan besar, masalahnya adalah pada pembatasan jaringan. Proxy menyelesaikan ini dalam beberapa menit. Dalam artikel ini, kita akan membahas semua cara pengaturan: melalui antarmuka IDE bawaan, melalui variabel sistem, dan melalui file konfigurasi — untuk PyCharm, IntelliJ IDEA, WebStorm, GoLand, dan produk JetBrains lainnya.
Mengapa pengembang membutuhkan proxy di IDE
JetBrains IDE secara aktif terhubung ke jaringan: mengunduh plugin dari Marketplace, memperbarui indeks, menarik dependensi melalui Maven Central, PyPI, npm, dan repositori lainnya, memeriksa lisensi, menyinkronkan pengaturan melalui Akun JetBrains. Jika salah satu dari permintaan ini diblokir — pekerjaan akan melambat atau bahkan terhenti.
Berikut adalah situasi konkret ketika proxy tidak dapat dihindari:
- Jaringan perusahaan dengan firewall. Banyak perusahaan hanya mengizinkan lalu lintas eksternal melalui server proxy perusahaan. Tanpa pengaturannya di IDE, plugin tidak akan terinstal, dan dependensi tidak akan diunduh.
- Geoblock. Beberapa repositori dan CDN dibatasi berdasarkan geografi. Proxy dengan lokasi yang tepat menghilangkan batasan ini.
- Bekerja dari negara dengan internet terbatas. JetBrains Marketplace, GitHub Packages, Maven Central mungkin tidak dapat diakses secara langsung.
- Pengembangan dan pengujian aplikasi jaringan. Perlu mengarahkan lalu lintas IDE melalui node tertentu untuk memeriksa perilaku aplikasi dari wilayah lain.
- Keamanan di jaringan publik. Saat bekerja dari kafe atau coworking, proxy mengenkripsi lalu lintas IDE dan melindungi token dan kunci dari penyadapan.
- Menghindari pembatasan sanksi. Setelah tahun 2022, sejumlah repositori dan layanan eksternal memberlakukan pembatasan berdasarkan IP — proxy memungkinkan untuk melanjutkan pekerjaan tanpa mengganti alat.
Berbeda dengan browser, di mana proxy diatur sekali dan berfungsi secara global, di JetBrains IDE proxy perlu diatur secara terpisah — dan kadang-kadang di beberapa tempat sekaligus: di dalam IDE itu sendiri, di manajer dependensi, dan di interpreter bahasa. Mari kita bahas setiap level secara berurutan.
Jenis proxy apa yang dipilih untuk JetBrains
JetBrains IDE mendukung tiga jenis proxy: HTTP, HTTPS, dan SOCKS5. Untuk sebagian besar tugas pengembang, proxy HTTP/HTTPS sudah cukup — mereka bekerja secara transparan dengan semua permintaan IDE, Maven, Gradle, dan pip. SOCKS5 memberikan lebih banyak fleksibilitas dan bekerja pada tingkat TCP, yang berguna untuk protokol yang tidak standar.
| Jenis Proxy | Dukungan di IDE | Cocok untuk | Fitur |
|---|---|---|---|
| HTTP/HTTPS | ✅ Native | Plugin, dependensi, lisensi | Paling mudah untuk diatur |
| SOCKS5 | ✅ Native | Semua koneksi TCP | Mendukung autentikasi |
| File PAC | ✅ Melalui pengaturan sistem | Jaringan perusahaan | Routing fleksibel |
| Proxy sistem | ✅ Deteksi otomatis | Ketika sudah diatur di OS | Tidak memerlukan pengaturan tambahan |
Jika Anda bekerja dengan proxy perusahaan — kemungkinan besar, itu adalah HTTP/HTTPS dengan autentikasi menggunakan nama pengguna dan kata sandi. Jika Anda menghubungkan layanan proxy eksternal untuk menghindari pemblokiran, perhatikan proxy pusat data — mereka menyediakan kecepatan tinggi dan stabilitas koneksi, yang sangat penting saat mengunduh dependensi dan indeks besar.
Pengaturan proxy melalui antarmuka IDE (HTTP/HTTPS)
Ini adalah cara paling sederhana dan direkomendasikan. Pengaturan diterapkan ke semua permintaan jaringan IDE: Marketplace, pembaruan, pemeriksaan lisensi, sinkronisasi plugin. Instruksi ini sama untuk PyCharm, IntelliJ IDEA, WebStorm, GoLand, Rider, CLion, dan produk lain dalam lini produk.
Langkah 1. Buka pengaturan IDE
Di Windows dan Linux: File → Settings (atau Ctrl+Alt+S).
Di macOS: PyCharm → Preferences (atau Cmd+,).
Langkah 2. Temukan bagian proxy
Di panel pengaturan kiri, navigasikan ke: Appearance & Behavior → System Settings → HTTP Proxy.
Atau cukup mulai mengetik kata proxy di bilah pencarian pengaturan — IDE akan segera menunjukkan bagian yang diperlukan.
Langkah 3. Pilih jenis proxy dan isi data
Di bagian HTTP Proxy, Anda akan melihat tiga opsi:
- No proxy — koneksi langsung (default).
- Auto-detect proxy settings — IDE akan mengambil pengaturan dari sistem operasi.
- Manual proxy configuration — pengaturan manual. Pilih opsi ini.
Saat memilih Manual proxy configuration, isi kolom:
- Host name — alamat IP atau domain server proxy. Misalnya:
proxy.example.comatau192.168.1.100. - Port number — port proxy. Nilai standar:
8080,3128,8888. - No proxy for — host yang harus terhubung langsung (tanpa proxy). Biasanya di sini ditambahkan
localhost,127.0.0.1, domain internal perusahaan. - Proxy authentication — jika proxy memerlukan nama pengguna dan kata sandi, centang dan masukkan kredensial.
Langkah 4. Periksa koneksi
Klik tombol Check connection dan masukkan URL apa pun — misalnya, https://plugins.jetbrains.com. Jika semuanya diatur dengan benar, IDE akan menunjukkan status Connection successful. Setelah itu, klik OK dan restart IDE.
💡 Tips
Pengaturan HTTP Proxy di JetBrains IDE disimpan secara global — mereka diterapkan ke semua proyek dan disimpan antara restart. Jika Anda perlu beralih antara proxy untuk tugas yang berbeda, lebih nyaman menggunakan variabel lingkungan sistem (dijelaskan di bawah).
Pengaturan proxy SOCKS5 di JetBrains IDE
SOCKS5 adalah protokol yang lebih fleksibel, yang tidak hanya bekerja dengan HTTP/HTTPS, tetapi juga dengan semua koneksi TCP. Ini berguna jika penyedia proxy Anda menyediakan SOCKS5, atau jika Anda menggunakan tunnel SSH.
Di antarmuka JetBrains IDE, bagian SOCKS berada di tempat yang sama: Appearance & Behavior → System Settings → HTTP Proxy. Di blok Manual proxy configuration, alihkan tombol radio dari HTTP ke SOCKS.
Isi kolom seperti proxy HTTP:
- Host name — alamat server SOCKS5.
- Port number — port (biasanya
1080atau1081). - Proxy authentication — nama pengguna dan kata sandi, jika diperlukan.
Nuansa penting: klien SOCKS bawaan JetBrains IDE bekerja pada tingkat JVM dan hanya menangkap koneksi yang IDE buat secara langsung melalui Java. Proses eksternal — Maven Wrapper, Gradle Daemon, pip, npm — dijalankan sebagai proses terpisah dan tidak mewarisi pengaturan proxy dari antarmuka IDE. Untuk mereka, pengaturan terpisah diperlukan (lihat bagian di bawah).
Pengaturan melalui parameter JVM (vmoptions)
Jika pengaturan melalui antarmuka tidak berfungsi (misalnya, di beberapa versi IDE atau saat menggunakan plugin non-standar), Anda dapat menetapkan proxy langsung melalui parameter JVM. Ini adalah cara yang andal dan tingkat rendah yang dijamin diterapkan ke semua koneksi JVM.
Cara membuka file vmoptions
Di menu IDE, navigasikan: Help → Edit Custom VM Options.... File pycharm64.vmoptions (atau idea64.vmoptions untuk IntelliJ IDEA) akan terbuka di direktori pengaturan pengguna.
Tambahkan baris berikut di akhir file untuk proxy HTTP:
-Dhttp.proxyHost=your.proxy.host -Dhttp.proxyPort=8080 -Dhttps.proxyHost=your.proxy.host -Dhttps.proxyPort=8080 -Dhttp.proxyUser=username -Dhttp.proxyPassword=password -Dhttps.proxyUser=username -Dhttps.proxyPassword=password -Dhttp.nonProxyHosts=localhost|127.0.0.1|*.local
Untuk proxy SOCKS5, gunakan parameter lain:
-DsocksProxyHost=your.socks.host -DsocksProxyPort=1080 -DsocksProxyVersion=5
Setelah menyimpan file, restart IDE. Parameter akan diterapkan ke semua koneksi JVM, termasuk pengunduhan indeks, bekerja dengan plugin, dan klien Git bawaan.
⚠️ Penting
Jika kata sandi mengandung karakter khusus (@, #, %), mereka perlu di-escape dalam URL encoding. Misalnya, @ → %40. Jika tidak, JVM akan salah mengurai parameter dan proxy tidak akan berfungsi.
Proxy melalui variabel lingkungan sistem
Cara ini sangat nyaman di Linux dan macOS, serta di lingkungan CI/CD. Variabel lingkungan diwarisi tidak hanya oleh JVM, tetapi juga oleh proses anak — yaitu Maven, Gradle, pip, npm juga akan otomatis mengadopsinya.
Variabel standar untuk proxy HTTP:
export HTTP_PROXY=http://username:[email protected]:8080 export HTTPS_PROXY=http://username:[email protected]:8080 export NO_PROXY=localhost,127.0.0.1,::1
Tambahkan baris ini ke ~/.bashrc, ~/.zshrc, atau ~/.profile tergantung pada shell Anda. Setelah itu, restart terminal dan jalankan IDE dari sana — ia akan mengambil variabel lingkungan.
Di Windows, variabel ditetapkan melalui antarmuka sistem:
- Buka Control Panel → System → Advanced system settings → Environment Variables.
- Di bagian "User variables", klik Create.
- Tambahkan variabel
HTTP_PROXYdanHTTPS_PROXYdengan nilaihttp://username:[email protected]:8080. - Restart IDE.
Perhatikan: JetBrains IDE di Windows dijalankan sebagai proses terpisah melalui peluncur, dan variabel lingkungan yang ditetapkan dalam sesi terminal saat ini mungkin tidak diteruskan ke IDE. Lebih aman untuk menetapkannya melalui antarmuka sistem atau melalui file vmoptions.
Proxy untuk Maven dan Gradle di dalam IntelliJ IDEA
Maven dan Gradle adalah alat terpisah dengan file konfigurasi mereka sendiri. Bahkan jika proxy diatur di antarmuka IDE, Maven Wrapper dan Gradle Daemon dapat mengabaikan pengaturan ini, karena dijalankan sebagai proses JVM mandiri.
Proxy untuk Maven
Buka file ~/.m2/settings.xml (buat jika tidak ada) dan tambahkan bagian <proxies>:
<settings>
<proxies>
<proxy>
<id>main-proxy</id>
<active>true</active>
<protocol>https</protocol>
<host>proxy.example.com</host>
<port>8080</port>
<username>your_username</username>
<password>your_password</password>
<nonProxyHosts>localhost|127.0.0.1</nonProxyHosts>
</proxy>
</proxies>
</settings>
Jika Anda perlu mengatur proxy secara terpisah untuk HTTP dan HTTPS, tambahkan dua blok <proxy> dengan id dan protocol yang berbeda.
Proxy untuk Gradle
Untuk Gradle, pengaturan proxy ditetapkan di file ~/.gradle/gradle.properties (secara global) atau di file gradle.properties di root proyek (untuk proyek tertentu):
systemProp.http.proxyHost=proxy.example.com systemProp.http.proxyPort=8080 systemProp.http.proxyUser=your_username systemProp.http.proxyPassword=your_password systemProp.http.nonProxyHosts=localhost|127.0.0.1 systemProp.https.proxyHost=proxy.example.com systemProp.https.proxyPort=8080 systemProp.https.proxyUser=your_username systemProp.https.proxyPassword=your_password
Setelah menyimpan file, IntelliJ IDEA akan secara otomatis mengambil pengaturan baru saat sinkronisasi proyek Gradle berikutnya. Klik tombol Reload All Gradle Projects (ikon pembaruan di panel Gradle di sebelah kanan) — dan dependensi akan mulai diunduh melalui proxy.
Proxy untuk pip dan conda di PyCharm
PyCharm adalah IDE utama untuk pengembang Python. Instalasi paket melalui pip dan conda terjadi melalui proses terpisah yang tidak membaca pengaturan proxy dari antarmuka PyCharm. Berikut cara mengatur proxy untuk setiap manajer paket.
Proxy untuk pip
Cara 1 — melalui argumen baris perintah saat menginstal paket:
pip install requests --proxy http://username:[email protected]:8080
Cara 2 — melalui file konfigurasi pip (diberlakukan secara permanen). Buka atau buat file:
- Linux/macOS:
~/.config/pip/pip.conf - Windows:
%APPDATA%\pip\pip.ini
[global] proxy = http://username:[email protected]:8080
Cara 3 — melalui variabel lingkungan (bekerja untuk pip dan alat Python lainnya):
export HTTP_PROXY=http://username:[email protected]:8080 export HTTPS_PROXY=http://username:[email protected]:8080
Proxy untuk conda
Conda menggunakan file konfigurasi sendiri .condarc. Buka di direktori home Anda dan tambahkan:
proxy_servers: http: http://username:[email protected]:8080 https: http://username:[email protected]:8080
Atau jalankan perintah di terminal PyCharm:
conda config --set proxy_servers.http http://proxy.host:8080 conda config --set proxy_servers.https http://proxy.host:8080
Jika Anda bekerja dengan mirror PyPI (misalnya, mirror Yandex atau Nexus perusahaan), Anda dapat beralih pip ke indeks alternatif alih-alih menggunakan proxy. Namun, jika mirror juga tidak dapat diakses — proxy tetap menjadi satu-satunya solusi. Untuk bekerja stabil dengan PyPI, proxy residensial sangat cocok — mereka terlihat seperti permintaan pengguna biasa dan tidak diblokir oleh penyedia CDN PyPI.
Masalah umum dan solusinya
Bahkan dengan pengaturan yang benar, kadang-kadang ada yang tidak beres. Mari kita bahas masalah yang paling umum dan cara mengatasinya.
Masalah 1: "Connection refused" atau "Unable to connect to proxy"
Penyebab: host atau port yang salah, atau proxy tidak tersedia.
Solusi: periksa alamat dan port proxy. Coba sambungkan ke proxy melalui curl di terminal:
curl -x http://proxy.host:8080 https://plugins.jetbrains.com
Jika curl juga tidak terhubung — masalah ada pada proxy itu sendiri, bukan pada pengaturan IDE.
Masalah 2: Proxy sudah diatur, tetapi plugin tetap tidak terinstal
Penyebab: IDE menyimpan pengaturan lama atau pengaturan tidak diterapkan ke semua komponen.
Solusi:
- Tutup IDE sepenuhnya (pastikan proses tidak menggantung di latar belakang).
- Bersihkan cache:
File → Invalidate Caches → Invalidate and Restart. - Periksa bahwa tidak ada parameter yang bertentangan di file
vmoptions.
Masalah 3: Kesalahan SSL/TLS saat bekerja melalui proxy
Penyebab: proxy perusahaan melakukan inspeksi SSL (MITM) dan mengganti sertifikat. JVM tidak mempercayai sertifikat yang diganti.
Solusi: minta administrator sistem untuk memberikan sertifikat root CA perusahaan dan impor ke Java KeyStore:
keytool -import -alias corporate-ca -keystore $JAVA_HOME/lib/security/cacerts \ -file corporate-ca.crt -storepass changeit
Di JetBrains IDE, ada alat bawaan: Settings → Tools → Server Certificates — di sana Anda dapat menambahkan sertifikat tepercaya melalui GUI.
Masalah 4: Proxy dengan autentikasi tidak menerima kata sandi
Penyebab: karakter khusus dalam kata sandi tidak di-escape, atau proxy menggunakan autentikasi NTLM/Kerberos (proxy perusahaan Microsoft).
Solusi: untuk proxy NTLM, JVM mendukungnya secara native, tetapi perlu menetapkan parameter tambahan:
-Djdk.http.auth.tunneling.disabledSchemes="" -Djdk.http.auth.proxying.disabledSchemes=""
Masalah 5: Git di dalam IDE tidak berfungsi melalui proxy
Penyebab: klien Git bawaan JetBrains menggunakan Git sistem, bukan koneksi JVM. Pengaturan proxy dari IDE tidak mempengaruhi.
Solusi: atur proxy langsung di Git:
git config --global http.proxy http://username:[email protected]:8080 git config --global https.proxy http://username:[email protected]:8080
| Gejala | Penyebab yang mungkin | Cara memperbaiki |
|---|---|---|
| Plugin tidak terinstal | Proxy tidak diatur di IDE | Settings → HTTP Proxy |
| Maven tidak mengunduh dependensi | Tidak ada pengaturan di settings.xml | ~/.m2/settings.xml → proxies |
| pip tidak menginstal paket | pip tidak membaca pengaturan IDE | pip.conf atau ENV-variabel |
| Kesalahan SSL | Inspeksi MITM di proxy | Impor sertifikat perusahaan |
| Git tidak berfungsi melalui proxy | Git tidak membaca pengaturan JVM | git config --global http.proxy |
| Gradle tidak disinkronkan | Tidak ada pengaturan di gradle.properties | ~/.gradle/gradle.properties |
Kesimpulan
Pengaturan proxy di JetBrains IDE bukanlah satu tombol, melainkan beberapa level konfigurasi. Hal utama yang perlu diingat: IDE itu sendiri (plugin, lisensi, Marketplace) diatur melalui Settings → HTTP Proxy atau melalui parameter JVM di vmoptions. Manajer dependensi — Maven, Gradle, pip, conda — memerlukan pengaturan terpisah di file konfigurasi mereka. Git di dalam IDE diatur melalui git config global.
Jika Anda menggunakan proxy untuk menghindari geoblock atau pembatasan jaringan perusahaan, penting untuk memilih server proxy yang stabil dan cepat. Untuk bekerja dengan repositori, Marketplace, dan mengunduh dependensi, proxy pusat data sangat cocok — mereka menyediakan kecepatan tinggi dan latensi minimal, yang sangat penting saat menyinkronkan proyek besar dengan ratusan dependensi. Namun, jika Anda memerlukan kompatibilitas maksimal dengan layanan yang memblokir IP server, pertimbangkan proxy residensial — mereka menggunakan alamat pengguna nyata dan hampir tidak menimbulkan kecurigaan di sistem perlindungan CDN dan repositori.
```