مخفف MVN
Maven
آپاچی ماون (Apache Maven) یک ابزار مدیریت و تعریف پروژه بر پایه مفهوم POM - Project Object Model میباشد. Maven بهمعنی مخزن دانش میباشد. Maven یک روش جامع برای مدیریت پروژه از زمان کامپایل تا انتشار تا مستندسازی تا همکاری تیمی فراهم میسازد، در یک جمله Maven یک چارچوب مدیریت پروژه (Project Management Framework) میباشد. maven ابزار ساخت و مدیریت پروژههای جاوا که تا حدودی شبیه apachi ant ولی در ساختار کلی متفاوت است. البته میتوان maven را در پروژههای c# , Ruby ,scala و زبانهای دیگر نیز مورد استفاده قرار داد. maven قسمتی از پروژه Jakarta بود. maven با استفاده از فایل XML پروژه نرمافزاری در حال ساخت را توصیف میکند که شامل توصیف وابستگی پروژه به ماژولها، کتابخانهها و سایر قطعات نرمافزاری دیگر میباشد. همچنین برخی از وظایف تعریف شده مانند کامپایل کد و بستهبندی نرمافزاری را در خود دارد. maven بهصورت پویا کتابخانههای جاوا و پلاگینهای خود را از یک یا چند مخزن مانند مخزن مرکزی دانلود کرده و در یک حافظه پنهان (cache) محلی ذخیره میکند. این حافظه پنهان (cache) محلی میتواند بهوسیله پروژههای محلی بهروزرسانی شود. مخزنهای عمومی هم میتوانند بهروزرسانی شوند. MAVEN با استفاده از معماری مبتنی بر پلاگین ساخته شدهاست که به آن اجازه میدهد تا از هر برنامهای که از طریق ورودی استاندارد قابل کنترل است استفاده کند. از لحاظ تئوری، این مسئله به همه افراد اجازه میدهد تا برای هر زبان دیگری پلاگینهایی بنویسند که واسط ابزار ساخت شود(کامپایلرها، ابزار تست واحد، و غیره). در واقع، پشتیبانی و استفاده برای زبانهای دیگر بهغیر از جاوا حداقل بودهاست. در حال حاضر یک پلاگین برای چارچوب دات نت وجود دارد و حفظ میشود، [4 و C / C + + پلاگینهای بومی برای MAVEN 2 نگهداری میشدهاست.