Maven

استفاده از مخزن داخلی Maven در مگان هاب

با مخزن داخلی Maven، وابستگی‌های پروژه‌های Java رو می‌تونین با سرعت و پایداری بالا بگیرین، بدون اینکه مستقیم به Maven Central یا سایر مخازن خارجی وصل بشین.

این مخزن با ابزارهای استاندارد Java مثل Maven و Gradle کاملاً سازگاره و بدون دردسر قابل استفاده است.

آدرس مخزن Maven مگان

آدرس مخزن Maven مگان:

https://hub.megan.ir/maven

این آدرس جایگزین مستقیم مخزن رسمی زیره:

https://repo.maven.apache.org/maven2

چرا مخزن Maven مگان خوبه؟

  • سرعت بالاتر برای دانلود وابستگی‌ها
  • پایداری بیشتر وقتی Maven Central مشکل داره یا محدود شده
  • قابل استفاده هم با Maven و هم Gradle
  • مناسب برای پروژه‌های enterprise و CI/CD
  • کم کردن وابستگی به منابع خارجی

چطوری از Maven مگان استفاده کنیم

اینجا روش‌های استاندارد استفاده از مخزن مگان رو براتون آوردم.

روش ۱: تنظیم در سطح کاربر (settings.xml) — پیشنهادی

این روش، مخزن رو توی فایل تنظیمات سراسری Maven تعریف می‌کنه و همه وابستگی‌ها از مخزن مگان گرفته می‌شن.

مسیر فایل:

~/.m2/settings.xml

یا در سطح سیستمی:

/etc/maven/settings.xml

نمونه تنظیمات:

<settings>
  <mirrors>
    <mirror>
      <id>megan-mirror</id>
      <name>Megan Maven Mirror</name>
      <url>https://hub.megan.ir/maven</url>
      <mirrorOf>*</mirrorOf>
    </mirror>
  </mirrors>
</settings>

با این کار همه وابستگی‌ها از مخزن مگان می‌آن.

روش ۲: تنظیم در سطح پروژه (pom.xml)

اگه فقط یه پروژه خاص نیاز به تنظیم داره، می‌تونی مخزن رو توی فایل pom.xml تعریف کنی:

<repositories>
  <مخزن>
    <id>megan</id>
    <url>https://hub.megan.ir/maven</url>
  </مخزن>
</repositories>

استفاده در Gradle

مخزن Maven مگان با Gradle هم سازگاره.

Gradle (Groovy DSL)

repositories {
  maven {
    url "https://hub.megan.ir/maven"
  }
}

Gradle (Kotlin DSL)

repositories {
  maven("https://hub.megan.ir/maven")
}

استفاده در CI/CD

برای محیط‌های CI/CD بهتره از روش mirror توی فایل settings.xml استفاده بشه تا همه پروژه‌ها یکدست از مخزن مگان استفاده کنن.

برگشت به Central Maven (در صورت نیاز)

برای برگشت به مخزن رسمی، کافیه تنظیم mirror رو از فایل settings.xml حذف کنی یا مقدار mirrorOf رو تغییر بدی.