مقدمة
اليوم واجهت مشكلة. لدينا ملف IP.DAT الثنائي. من خلال المحتويات ، يمكننا تحليل المعلومات الإقليمية لـ IP. اختبارات الوحدة المحلية على ما يرام. بعد الانتشار في بيئة الاختبار ، وجدنا خطأ عند تحليل IP. إذا أخذت عنوان IP مطبوعًا في بيئة الاختبار ، فلا توجد مشكلة في الاختبار محليًا. أخيرًا ، وجدت أن حجم ملف IP.DAT لقاعدة التعليمات البرمجية هو حوالي 3.5 متر فقط ، في حين أن حجم ملف IP.DAT لبيئة الاختبار حوالي 5 أمتار.
والسؤال هو: لماذا يصبح الملف أكبر بعد تعبئة IP.DAT من خلال Maven؟ منذ أن يتم تعبئة Maven ، سيتم نسخ هذا الملف من دليل Conf أدناه SRC/Main/Resources/. لقد وضعت مباشرة IP.DAT في دليل CONF ، بدلاً من دليل الموارد ، ووجدت أن الحجم كان طبيعيًا بعد التغليف.
بمعنى آخر ، أثناء عملية تغليف Maven ، تكون الملفات الموجودة في SRC/Main/Resources/Directory أكبر فقط. لأننا نمكّن تصفية الموارد في POM.
<Sresourt> <rofression> <Cirlive> src/main/resources </directory> <ilitering> true </filtering> </sroger> </srossial>
حل
الحل بسيط للغاية: فقط ضع IP.DAT في دليل CONF دون المشاركة في تصفية الموارد. إذا كان عليك وضع IP.DAT في دليل الموارد ، فيمكنك حلها من خلال التكوين التالي.
<rossords> <!-استبعاد ip.dat ، غير معبأ في classpath ، لن يكون هناك أي تصفية-> <srodustory> <Cirluder> src/main/resources </directory> <filtering> true </filtering> <aspshing> <isspather> ip.dat </explude> </regressure> </! <Criptory> src/main/resources </directory> <biltering> false </filtering> <sudgency> <sckize> ip.dat </include> </sults> </resource> </srossial>
عند استخدام Maven لتصفية الموارد ، ما عليك سوى تصفية الملفات التي يجب ترشيحها ، وبعض الملفات الثنائية ، مثل شهادات HTTPS ، وما إلى ذلك ، لا تشارك في تصفية الموارد ، وإلا فإن محتوى الملف قد تالفة بعد التغليف.
لخص
ما سبق هو المحتوى الكامل لهذه المقالة. آمل أن يكون لمحتوى هذه المقالة قيمة مرجعية معينة لدراسة أو عمل الجميع. إذا كان لديك أي أسئلة ، فيمكنك ترك رسالة للتواصل. شكرا لك على دعمك إلى wulin.com.