Apache Ant یک نرم افزار خط فرمان خطی کاملا رایگان، متقابل پلت فرم و باز است که در جاوا اجرا شده است، همراه با پروژه آپاچی توزیع شده و از زمین به عنوان یک سیستم ساخت قدرتمند برای کامپایل برنامه های نوشته شده در زبان برنامه نویسی جاوا
شبیه به GNU
نرم افزار آپاچی مورچه، که یک برنامه خط فرمانی است، کاملا مشابه با کامپایلر GNU make source است اما شناخته شده است که پشتیبانی بسیار بیشتری را برای مسائل مختلف متقابل پلتفرم با توسعه برنامه های جاوا داشته باشد.
سیستم ساخت کامل برای بسیاری از پروژه های جاوا
به عنوان یک پروژه آپاچی، نرم افزار آپاچی مورچه سیستم کامل ساخت بسیاری از پروژه های جاوا در Apache و همچنین بسیاری از دیگر پروژه های منبع باز مستقل است که در زبان برنامه نویسی جاوا نوشته شده اند.
شروع به کار با Apache مورچه
آیا شما یک کاربر نهایی هستید که نیاز به آپاچی مورچه برای جمع آوری منابع یک برنامه کاربردی نوشته شده در جاوا دارد یا شما یک توسعه دهنده جاوا در حال برنامه ریزی هستید، می توانید به راحتی از سیستم آپاچی خود در انتخاب سیستم عامل خود استفاده کنید (نگاه کنید به بخش زیر برای سیستم عامل های پشتیبانی شده)
برای راحتی شما، نرم افزار به صورت یک باینری از قبل ساخته شده است که می تواند در هر سیستم عامل لینوکس استفاده شود، 32 و 64 بیتی پشتیبانی می شوند. البته، کاربران پیشرفته که می خواهند بهینه سازی نصب را نیز می توانند بسته ی منبع را از Softoware بگیرند.
به سادگی اجرا کنید & lsquo؛ مورچه & rsquo؛ دستور در یک شبیه ساز ترمینال برای مشاهده پیام استفاده و گزینه های خط فرمان در دسترس است. لطفا توجه داشته باشید که در برخی از توزیع، Ant نیاز به نرم افزار OpenJDK دارد.
برای GNU / Linux، Microsoft Windows و Mac OS X اجرا می شود
در جاوا نوشته شده Apache Ant یک نرم افزار متقابل پلت فرم است که بر روی هر سیستم عامل رایانه ای که در آن JRE (Java Runtime Environment) پشتیبانی می شود، از جمله تمامی توزیع های گنو / لینوکس و همچنین Mac OS X و سیستم عامل مایکروسافت ویندوز.
چه جدید در این نسخه است:
تغییراتی که می تواند محیط های قدیمی را از بین ببرد:
خصیصه prefixValues کار نمی کند به عنوان انتظار می رود زمانی که به اشتباه تنظیم شده (به طور پیش فرض). به احتمال زیاد فایلهای ساخته شده موجود بر رفتار اشتباه مبتنی است و انتظار میرود که Ant برای حل و فصل ارزش در برابر خواص تعریف شده در فایل ملک خود - این فایل های ساخت باید صراحتا صفت prefixValues را به درست تنظیم کنند. گزارش Bugzilla 54769
هنگامی که یک ورودی یک فایل زیپ / tarfileet را در برابر یک الگوریتم منطبق می کنید، اسلش برجسته ای از نام ورود حذف خواهد شد. اکثر آرشیوها مسیرهایی را که حاوی اسلش های برجسته هستند را ندارند. این ممکن است الگوهایی را که با / / برای متوقف کردن تطبیق هر چیزی آغاز می شود، شامل شود. چنین الگوهایی فقط به طور تصادفی کار می کنند و فقط در سیستم عامل با ریشه های سیستم فایل چندگانه استفاده می شود. گزارش Bugzilla 53949
DirectoryScanner و در نتیجه fileset / dirset در حال حاضر به طور صحیح تمام اشیاء فایل سیستم را که به فایل java.io.File هستند نه فایل و نه دایرکتوری را رها می کنند. این مانتو از خواندن لوله های نامیده می شود که ممکن است منجر به مسدود شدن یا رفتار نامشخص دیگری شود. گزارش Bugzilla 56149
اشکالات ثابت:
/ هنگامی که فایل وارد شده از یک URI یا یک jar بارگذاری شد، فایل را از طریق یک مسیر مطلق از سیستم فایل محلی وارد کرد. گزارش Bugzilla 50953
می تواند همان منبع را دو بار وارد کند که از طریق انواع منابع مختلف وارد شده است. گزارش Bugzilla گزارش 55097
چندین فراخوانی به File # mkdirs می تواند به یک وضعیت نژادی که در آن یک رشته دیگر یک پوشه مشابه ایجاد کرده است، قربانی شود. گزارش Bugzilla 55290
'/' به جای "./" برای پوشه پدر و مادر جارفیل داده شده ایجاد شده است. گزارش Bugzilla 55049fixlastline = & quot؛ درست است & quot؛ هنگام استفاده از خوانندگان فیلتر خاص کار نمی کرد. گزارش Bugzilla 54672
چندین مکان که منابع از شیشه ها خوانده می شوند، اکنون به طور صریح ذخیره سازی را غیرفعال می کنند تا از مشکلی که با بارگیری مجدد دارند جلوگیری شود. گزارش Bugzilla 54473
AntClassloader در حال حاضر فایل هایی را که بخشی از مسیر classpath هستند اما فایل های زیپ را در هنگام اسکن برای منابع نادیده می گیرد، نادیده می گیرد. این یک استثناء را استفاده کرد. گزارش بوگزیلا 53964
زمانی که هیچ تخفیفی تعیین نشد، NullPointerException ایجاد شد. گزارش Bugzilla 55949
هنوز بخش عمده ای از ظاهر فایل ها را شامل می شود اگر هیچ ویژگی آشکار و یا مانیستر در دسترس نباشد. گزارش Bugzilla 54171
خواندن کامپایلر args تبدیل شده است دفاعی Bugzilla گزارش 53754
بدون نیروی = & quot؛ درست است & quot؛ نه تنها قادر به بازنویسی یک فایل فقط خواندنی به عنوان انتظار می رود بلکه فایل موجود را نیز حذف می کند. گزارش Bugzilla 53095
لینک های نمادین را به فایل های غیر شامل حذف می کند. همچنان لینکهای متنی را به دایرکتوریهایی که پیروی کردهاند، حتی اگر به صراحت گنجانده نشدهاند، حذف کنند. exclude-الگوها همچنان می توانند برای حفظ لینک های نمادین استفاده شوند. گزارش بوگسلیا 53959گاهی اوقات عملیات کپی با استفاده از NIO FileChannels خراب می شوند. در حال حاضر، Ant ممکن است سعی کند از یک عمل Copy مبتنی بر جریان به عنوان جایگزین هنگامی که کپی مبتنی بر کانال نتواند استفاده کند. گزارشات Bugzilla 53102 و 54397
Javadoc.postProcessGeneratedJavadocs () برای کلاس هایی که گسترش Javadoc Bugzilla Report 56047 را شکست داد
TarInputStream اکنون بایگانی هایی ایجاد شده توسط پیاده سازی tar را که اعداد بزرگ را کد گذاری می کنند بدون اضافه کردن NUL پایان نمی دهد.
روش exEsists () URLResource اعتبار های اشتباهی را برای URL های HTTP و FTP باز می کند.
سایر تغییرات:
پشتیبانی اولیه برای جاوا 1.9
می تواند به صورت تصادفی System.in را به فرایند راه دور Bugzilla Report 55393 منتقل کند
در حال حاضر پشتیبانی از ضبط خطای خروجی فرآیند اعدام و تنظیم یک ویژگی از کد بازگشت. گزارش Bugzilla 48478
در حال حاضر گزینه ای برای شکست وجود دارد اگر javadoc اخطارها را صادر کند. گزارش Bugzilla 55015
دارای یک ویژگی جدید از فایرفاکس است. گزارش بوگزیلا 39541
تغییر به JUnitTestRunner و PlainJUnitResultFormatter برای ایجاد کردن OutOfMemoryErrors کمتر احتمال دارد. گزارش Bugzilla 45536
تغییر به DOMElementWriter برای ایجاد OutOfMemoryErrors کمتر احتمال دارد. گزارش Bugzilla 54147
دارای ویژگی جدید binaryOutput است که مانت را از تقسیم کردن خروجی به خط جلوگیری می کند. این مانع خروجی باینری از خراب شدن است اما ممکن است منجر به خطا شود و خروجی طبیعی را مخلوط کند. گزارش Bugzilla 55667 Bugzilla Report 56156
عناصر توانی در حال حاضر ویژگی inputEncoding اختیاری است که می تواند برای مشخص کردن کدگذاری فایل هایی که از رمزگذاری پیش فرض پلتفرم استفاده نمی کنند استفاده شود. گزارش باگزیلا 56258
این وظیفه به صراحت از رمزگذاری محتوای Gzip پذیرفته و پشتیبانی می کند. گزارش Bugzilla 49453
یک نوع resourcecollection جدید مانند یک اتحاد s و s عمل می کند که پیکربندی مشابه دارند اما دایرکتوری پایه ای متفاوت دارند. گزارش Bugzilla 48621
دارای یک ویژگی آرام است که باعث می شود اشتباهات ورودی کار فقط زمانی که فعال شود. درخواست GitHub شماره 1
در حال حاضر ویژگی های موضوعات اجازه می دهد برای اجرای آزمون در چندین موضوع است. گزارش Bugzilla 55925
اضافه کردن یک کلاس ProcessUtil جدید که شناسه پردازش روند فعلی را فراهم می کند
تغییرات اجازه می دهد تا موزیک های آزمون JUnit از موت را به صورت موازی اجرا کنند، با استفاده از آنها از دایرکتوری موقت منحصر به فرد استفاده می کنند
چه جدید در نسخه 1.9.4 است:
تغییراتی که می تواند محیط های قدیمی را از بین ببرد:
خصیصه prefixValues کار نمی کند به عنوان انتظار می رود زمانی که به اشتباه تنظیم شده (به طور پیش فرض). به احتمال زیاد فایلهای ساخته شده موجود بر رفتار اشتباه مبتنی است و انتظار میرود که Ant برای حل و فصل ارزش در برابر خواص تعریف شده در فایل ملک خود - این فایل های ساخت باید صراحتا صفت prefixValues را به درست تنظیم کنند. گزارش Bugzilla 54769
هنگامی که یک ورودی یک فایل زیپ / tarfileet را در برابر یک الگوریتم منطبق می کنید، اسلش برجسته ای از نام ورود حذف خواهد شد. اکثر آرشیوها مسیرهایی را که حاوی اسلش های برجسته هستند را ندارند. این ممکن است الگوهایی را که با / / برای متوقف کردن تطبیق هر چیزی آغاز می شود، شامل شود. چنین الگوهایی فقط به طور تصادفی کار می کنند و فقط در سیستم عامل با ریشه های سیستم فایل چندگانه. گزارش Bugzilla 53949
DirectoryScanner و در نتیجه fileset / dirset در حال حاضر به طور صحیح تمام اشیاء فایل سیستم را که به فایل java.io.File هستند نه فایل و نه دایرکتوری را رها می کنند. این مانتو از خواندن لوله های نامیده می شود که ممکن است منجر به مسدود شدن یا رفتار نامشخص دیگری شود. گزارش Bugzilla 56149
اشکالات ثابت:
/ هنگامی که فایل وارد شده از یک URI یا یک jar بارگذاری شد، فایل را از طریق یک مسیر مطلق از سیستم فایل محلی وارد کرد. گزارش Bugzilla 50953
می تواند همان منبع را دو بار وارد کند که از طریق انواع منابع مختلف وارد شده است. گزارش Bugzilla 55097
چندین فراخوانی به File # mkdirs می تواند به یک وضعیت نژادی که در آن یک رشته دیگر یک پوشه مشابه ایجاد کرده است، قربانی شود. گزارش Bugzilla 55290
'/' به جای "./" برای پوشه پدر و مادر جارفیل داده شده ایجاد شده است. گزارش Bugzilla 55049fixlastline = & quot؛ درست است & quot؛ هنگام استفاده از خوانندگان فیلتر خاص کار نمی کرد. گزارش Bugzilla 54672
چندین مکان که منابع از شیشه ها خوانده می شوند، اکنون به طور صریح ذخیره سازی را غیرفعال می کنند تا از مشکلی که با بارگیری مجدد دارند جلوگیری شود. گزارش Bugzilla 54473
AntClassloader در حال حاضر فایل هایی را که بخشی از مسیر classpath هستند اما فایل های زیپ را در هنگام اسکن برای منابع نادیده می گیرد، نادیده می گیرد. این یک استثناء را استفاده کرد. گزارش بوگزیلا 53964
زمانی که هیچ تخفیفی تعیین نشد، NullPointerException ایجاد شد. گزارش Bugzilla 55949
هنوز بخش عمده ای از ظاهر فایل ها را شامل می شود اگر هیچ ویژگی آشکار و یا مانیستر در دسترس نباشد. گزارش Bugzilla 54171
خواندن کامپایلر args تبدیل شده است دفاعی Bugzilla گزارش 53754
بدون نیروی = & quot؛ درست است & quot؛ نه تنها قادر به بازنویسی یک فایل فقط خواندنی به عنوان انتظار می رود بلکه فایل موجود را نیز حذف می کند. گزارش Bugzilla 53095
لینک های نمادین را به فایل های غیر شامل حذف می کند. همچنان لینکهای متنی را به دایرکتوریهایی که پیروی کردهاند، حتی اگر به صراحت گنجانده نشدهاند، حذف کنند. exclude-الگوها همچنان می توانند برای حفظ لینک های نمادین استفاده شوند. گزارش بوگسلیا 53959گاهی اوقات عملیات کپی با استفاده از NIO FileChannels خراب می شوند. در حال حاضر، Ant ممکن است سعی کند از یک عمل Copy مبتنی بر جریان به عنوان جایگزین هنگامی که کپی مبتنی بر کانال نتواند استفاده کند. گزارشات Bugzilla 53102 و 54397
Javadoc.postProcessGeneratedJavadocs () برای کلاس هایی که گسترش Javadoc Bugzilla Report 56047 را شکست داد
TarInputStream اکنون بایگانی هایی ایجاد شده توسط پیاده سازی tar را که اعداد بزرگ را کد گذاری می کنند بدون اضافه کردن NUL پایان نمی دهد.
روش exEsists () URLResource اعتبار های اشتباهی را برای URL های HTTP و FTP باز می کند.
سایر تغییرات:
پشتیبانی اولیه برای جاوا 1.9
می تواند به صورت تصادفی System.in را به فرایند راه دور Bugzilla Report 55393 منتقل کند
در حال حاضر پشتیبانی از ضبط خطای خروجی فرآیند اعدام و تنظیم یک ویژگی از کد بازگشت. گزارش Bugzilla 48478
در حال حاضر گزینه ای برای شکست وجود دارد اگر javadoc اخطارها را صادر کند. گزارش Bugzilla 55015
دارای یک ویژگی جدید از فایرفاکس است. گزارش بوگزیلا 39541
تغییر به JUnitTestRunner و PlainJUnitResultFormatter برای ایجاد کردن OutOfMemoryErrors کمتر احتمال دارد. گزارش Bugzilla 45536
تغییر به DOMElementWriter برای ایجاد OutOfMemoryErrors کمتر احتمال دارد. گزارش Bugzilla 54147
دارای ویژگی جدید binaryOutput است که مانت را از تقسیم کردن خروجی به خط جلوگیری می کند. این مانع خروجی باینری از خراب شدن است اما ممکن است منجر به خطا شود و خروجی طبیعی را مخلوط کند. گزارش Bugzilla 55667 Bugzilla Report 56156
عناصر توانی در حال حاضر ویژگی inputEncoding اختیاری است که می تواند برای مشخص کردن کدگذاری فایل هایی که از رمزگذاری پیش فرض پلتفرم استفاده نمی کنند استفاده شود. گزارش باگزیلا 56258
این وظیفه به صراحت از رمزگذاری محتوای Gzip پذیرفته و پشتیبانی می کند. گزارش Bugzilla 49453
یک نوع resourcecollection جدید مانند یک اتحاد s و s عمل می کند که پیکربندی مشابه دارند اما دایرکتوری پایه ای متفاوت دارند. گزارش Bugzilla 48621
دارای یک ویژگی آرام است که باعث می شود اشتباهات ورودی کار فقط زمانی که فعال شود. درخواست GitHub شماره 1
در حال حاضر ویژگی های موضوعات اجازه می دهد برای اجرای آزمون در چندین موضوع است. گزارش Bugzilla 55925
اضافه کردن یک کلاس ProcessUtil جدید که شناسه پردازش روند فعلی را فراهم می کند
تغییرات اجازه می دهد تا موزیک های آزمون JUnit از موت را به صورت موازی اجرا کنند، با استفاده از آنها از دایرکتوری موقت منحصر به فرد استفاده می کنند
چه جدید در نسخه 1.9.3 است:
اشکالات ثابت:
کد وضعیت کارهای توزیع شده را بلعید.
یک وضعیت مسابقه می تواند وظایف ایجاد موازی را برای دخالت در یکدیگر ایجاد کند.
mailport هنوز هم با استفاده از smtps کار درستی نمی کند.
با استفاده از صفات متعلق به فضای نامها و یا فاکتورهای نامگذاری شده، macrodef شکست خورده است.
تغییرات کاری متاتارس 1.8 انجام شده است exec را به خزیدن آهسته است
آپ زیر تحت JDK 1.8 در دسترس نیست
سایر تغییرات:
مستندات برای ویژگی های / / مگر رفع می شود. PR 55359.
مقادیر tar با نامهای لینک طولانی در حال حاضر به همان شیوه با نامهای طولانی کار می کنند.
اضافه کردن ویژگی "skipNonTests" به وظایف برای اجازه دادن به وظایف برای پر کردن کلاس هایی که شامل تست نیستند.
در حال حاضر از یک فیلتر توشیبا برای مشخص کردن پشتیبانی می کند.
اکنون پارامترها می توانند تایپ شوند.
ساخت سیستم عامل Mac OS X pkg installer
چه جدید در نسخه 1.9.1 است:
اگر اگر و اگر فضای نامهای XML موجود در تمام وظایف و عناصر توزیع شده باشد
پسوند Zip64 به طور پیش فرض غیر فعال است
بارگیری وابستگی های خارجی ثابت شده در وظایف JUnit
سبک های پیش فرض JUnitreport اکنون با JDK 1.7 سازگار است
توصیه به ارتقاء به jsch 0.1.50 برای کاربران از وظایف ssh / scp تحت جاوا 1.7
اصلاحات و اصلاحات دیگر در WHATSNEW مستند شده است
چه جدید در نسخه 1.8.4 منتشر شده است:
این نسخه آزمایشی امنیتی است که یک بردار حمله انکار سرویس احتمالی را در وظیفه bzip2 رفع می کند.
در نسخه 1.8.2 جدید است:
بهبود عملکرد در اسکن دایرکتوری.
وظیفه XSLT دوباره مسیر کلاس را جلب می کند (bugrep 49271).
تمایز بین وظایف اصلی و کارهای اختیاری لغو می شود.
رفع اشکالات و اصلاحات متعدد به عنوان مستند در Bugzilla و WHATSNEW.
در نسخه 1.7.1 جدید است:
تمرکز اصلی در زمینه اصلاح اشکالات و بهبود عملکرد است.
پشتیبانی از Java 6 افزایش یافته است، و JavaFX توسط کار اسکریپت پشتیبانی می شود.
موارد مورد نیاز:
Oracle Java Standard Edition محیط کاری زمان اجرا
نظر یافت نشد