سؤال

أحاول الترقية إلى أحدث أداة Java Mail.

من

<dependency>
    <groupId>javax.mail</groupId>
    <artifactId>mail</artifactId>
    <version>1.4.7</version>
</dependency>

إلى (قصدي)

<dependency>
    <groupId>javax.mail</groupId>
    <artifactId>mail</artifactId>
    <version>1.5.1</version>
</dependency>

لكنني لا أجد 1.5.1 لأداة البريد،

ولكن أستطيع أن أرى

<dependency>
    <groupId>com.sun.mail</groupId>
    <artifactId>javax.mail</artifactId>
    <version>1.5.1</version>
</dependency>

سؤالي هو سبب تغيير معرف المجموعة وإذا قمت بتغيير معرف المجموعة لـ 1.5.1، فهل أحتاج إلى تغيير كل تطبيقات البريد الخاصة بي الموجودة بالفعل (تغيير اسم الحزمة وأي أشياء أخرى) وما الفرق بين com.sun.mail ضد javax.mail?

هل كانت مفيدة؟

المحلول

تغيرت إحداثيات Maven منذ بعض الوقت لتكون متوافقة مع المخطط الموصوف هنا.الإحداثيات الجديدة هي هنا.

باختصار:

  • معرف المجموعة javax.mail لم يعد يستخدم للتنفيذ.
  • هناك قطعة أثرية جديدة في javax.mail:javax.mail-api.فهو يوفر javax.mail-api.jar ملف.يحتوي هذا على تعريفات JavaMail API فقط، وهي مناسبة للتجميع.
  • com.sun.mail:javax.mail يحتوي على javax.mail.jar الملف، وملف جرة التنفيذ المرجعي لـ JavaMail، بما في ذلك موفري بروتوكول SMTP وIMAP وPOP3.

لذلك، يجب عليك إما استخدام com.sun.mail:javax.mail للتجميع والتعبئة/النشر أو الاستخدام javax.mail:javax.mail-api للتجميع ثم نشر ملف com.sun.mail:javax.mail jar حيثما كان ذلك مناسبًا (على سبيل المثال، Tomcat lib الخاص بك).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top