JAR (file format)
ஒரு JAR ("ஜாவா காப்பகம்") கோப்பு என்பது ஒரு தொகுப்பு கோப்பு வடிவமாகும், இது பொதுவாக பல ஜாவா வகுப்பு கோப்புகள் மற்றும் தொடர்புடைய மெட்டாடேட்டா மற்றும் வளங்களை (உரை, படங்கள் போன்றவை) திரட்ட பயன்படுத்தப்படுகிறது. விநியோகிக்க ஒரு கோப்பில். JAR கோப்புகள் என்பது ஜாவா-குறிப்பிட்ட வெளிப்படையான கோப்பை உள்ளடக்கிய காப்பகக் கோப்புகள் ஆகும். அவை ஜிப் வடிவத்தில் கட்டப்பட்டுள்ளன மற்றும் பொதுவாக ஒரு. ஜார் கோப்பு நீட்டிப்பைக் கொண்டுள்ளன. வடிவமைப்பு ஒரு JAR கோப்பு ஜாவா ரன்டைம்களை அதன் வகுப்புகள் மற்றும் அதனுடன் தொடர்புடைய வளங்கள் உட்பட ஒரு முழு பயன்பாட்டையும் ஒரே கோரிக்கையில் திறம்பட பயன்படுத்த அனுமதிக்கிறது. JAR கோப்பு கூறுகள் சுருக்கப்படலாம், பதிவிறக்க நேரத்தைக் குறைக்கலாம். ஒரு JAR கோப்பில் ஒரு வெளிப்படையான கோப்பு இருக்கலாம், அது META-INF/MANIFEST. MF இல் அமைந்துள்ளது. வெளிப்படையான கோப்பில் உள்ள உள்ளீடுகள் JAR கோப்பை எவ்வாறு பயன்படுத்துவது என்பதை விவரிக்கின்றன. உதாரணமாக, JAR உடன் ஏற்ற மற்ற JAR கோப்புகளைக் குறிப்பிட ஒரு கிளாஸ்பாத் உள்ளீட்டைப் பயன்படுத்தலாம். ஒரு கோப்பின் உள்ளடக்கங்கள் ஜிப் வடிவமைப்பை ஆதரிக்கும் எந்தவொரு காப்பக பிரித்தெடுத்தல் மென்பொருளையும் அல்லது ஜாவா மேம்பாட்டு கருவித்தொகுப்பால் வழங்கப்பட்ட ஜாடி கட்டளை வரி பயன்பாட்டையும் பயன்படுத்தி பிரித்தெடுக்கப்படலாம். பாதுகாப்பு உருவாக்குநர்கள் ஜேஏஆர் கோப்புகளில் டிஜிட்டல் முறையில் கையெழுத்திடலாம். அவ்வாறான நிலையில், கையொப்பத் தகவல் உட்பொதிக்கப்பட்ட வெளிப்படையான கோப்பின் ஒரு பகுதியாக மாறும். ஜேஏஆர் கையொப்பமிடப்படவில்லை, ஆனால் அதற்கு பதிலாக காப்பகத்திற்குள் உள்ள ஒவ்வொரு கோப்பும் அதன் காசோலையுடன் பட்டியலிடப்பட்டுள்ளது; இந்த காசோலைகள்தான் கையொப்பமிடப்பட்டுள்ளன. கையொப்பமிடப்பட்ட கோப்புகள் செல்லுபடியாகும் என்றாலும், பல நிறுவனங்கள் ஜேஏஆர் கோப்பில் கையெழுத்திடலாம், ஒவ்வொரு கையொப்பத்துடனும் ஜேஏஆர் கோப்பை மாற்றலாம். ஜாவா ரன்டைம் கையொப்பமிடப்பட்ட ஜேஏஆர் கோப்புகளை ஏற்றும்போது, அது கையொப்பங்களை சரிபார்க்கலாம் மற்றும் கையொப்பத்துடன் பொருந்தாத வகுப்புகளை ஏற்ற மறுக்கலாம். இது 'சீல் செய்யப்பட்ட' தொகுப்புகளையும் ஆதரிக்க முடியும், இதில் கிளாஸ்லோடர் ஜாவா வகுப்புகளை ஒரே தொகுப்பில் ஏற்ற அனுமதிக்கும், அவை அனைத்தும் ஒரே நிறுவனங்களால் கையொப்பமிடப்பட்டிருந்தால் மட்டுமே. இது தீங்கிழைக்கும் குறியீட்டை ஏற்கனவே உள்ள தொகுப்பில் செருகுவதைத் தடுக்கிறது, இதனால் தொகுப்பு-பரவலான வகுப்புகள் மற்றும் தரவுகளுக்கான அணுகலைப் பெறுகிறது. தலைகீழ் பொறியியலை மிகவும் கடினமாக்க ஜே. ஏ. ஆர் கோப்புகளின் உள்ளடக்கம் தெளிவற்றதாக இருக்கலாம். செயல்படுத்தக்கூடிய JAR கோப்புகள் ஒரு செயல்படுத்தக்கூடிய ஜாவா நிரலை ஒரு JAR கோப்பில் தொகுக்கலாம், நிரல் பயன்படுத்தும் எந்த நூலகங்களுடனும். செயல்படுத்தக்கூடிய ஜேஏஆர் கோப்புகள் மெயின்-கிளாஸ்ஃ myPrograms.MyClass மற்றும் ஒரு வெளிப்படையான கிளாஸ்-பாத் (மற்றும்-சிபி வாதம் புறக்கணிக்கப்படுகிறது) உடன் நுழைவு புள்ளி வகுப்பைக் குறிப்பிடும் வெளிப்பாட்டைக் கொண்டுள்ளன. சில இயக்க முறைமைகள் கிளிக் செய்யும் போது இவற்றை நேரடியாக இயக்க முடியும். ஒரு கட்டளை வரியிலிருந்து ஜாவா-ஜார் foo.jar என்பது வழக்கமான அழைப்பாகும். பெரும்பாலான தளங்களில் பூர்வீக ஏவுகணைகளை உருவாக்க முடியும். எடுத்துக்காட்டாக, விண்டோஸ் எக்ஸ்இ கோப்புகளை வைத்திருக்க விரும்பும் மைக்ரோசாப்ட் விண்டோஸ் பயனர்கள் ஜேஎஸ்மூத், லான்ச் 4ஜே, வின்ரன் 4ஜே அல்லது நல்ஸாப்ட் ஸ்கிரிப்டபிள் இன்ஸ்டால் சிஸ்டம் போன்ற கருவிகளைப் பயன்படுத்தி ஒற்றை ஜேஏஆர் கோப்புகளை செயல்படுத்தக்கூடியவையாக மடிக்கலாம். ஒரு வெளிப்படையான கோப்பு என்பது ஒரு JAR க்குள் உள்ள ஒரு மெட்டாடேட்டா கோப்பு ஆகும். இது நீட்டிப்பு மற்றும் தொகுப்பு தொடர்பான தரவை வரையறுக்கிறது. இது பிரிவுகளாக ஒழுங்கமைக்கப்பட்ட பெயர்-மதிப்பு ஜோடிகளைக் கொண்டுள்ளது. ஒரு ஜேஏஆர் கோப்பு செயல்படுத்தக்கூடிய கோப்பாகப் பயன்படுத்தப்பட வேண்டும் என்றால், வெளிப்படையான கோப்பு பயன்பாட்டின் முக்கிய வகுப்பைக் குறிப்பிடுகிறது. வெளிப்படையான கோப்பு MANIFEST.MF என்று பெயரிடப்பட்டுள்ளது. வெளிப்படையான அடைவு சுருக்கப்பட்ட காப்பகத்தின் முதல் உள்ளீடாக இருக்க வேண்டும். விவரக்குறிப்புகள் META-INF/MANIFEST. MF என்ற நியமன இடத்தில் வெளிப்பாடு தோன்றுகிறது. ஒரு காப்பகத்தில் ஒரே ஒரு வெளிப்படையான கோப்பு மட்டுமே இருக்க முடியும், அது அந்த இடத்தில் இருக்க வேண்டும். ஜாவா மேம்பாட்டு தொகுப்பின் பதிப்பு 1 உடன் உருவாக்கப்பட்ட ஜேஏஆர் கோப்பில் உள்ள வெளிப்படையான கோப்பின் உள்ளடக்கம் பின்வருமாறு. வெளிப்பாடு-பதிப்புஃ 1 பெயர் அதன் மதிப்பிலிருந்து ஒரு பெருங்குடலால் பிரிக்கப்படுகிறது. முன்னிருப்பு வெளிப்பாடு அது வெளிப்பாட்டு விவரக்குறிப்பின் பதிப்பு 1 உடன் ஒத்துப்போகிறது என்பதைக் காட்டுகிறது. காப்பகத்தில் தொகுக்கப்பட்டுள்ள மற்ற கோப்புகளைப் பற்றிய தகவல்களை மாநிஃபெஸ்ட் கொண்டிருக்கலாம். வெளிப்படுத்தும் உள்ளடக்கங்கள் ஜேஏஆர் கோப்பின் நோக்கம் சார்ந்த பயன்பாட்டைப் பொறுத்தது. இயல்புநிலை வெளிப்படையான கோப்பு மற்ற கோப்புகளைப் பற்றி என்ன தகவல்களைப் பதிவு செய்ய வேண்டும் என்பது குறித்து எந்த அனுமானங்களையும் செய்யவில்லை, எனவே அதன் ஒற்றை வரியில் தன்னைப் பற்றிய தரவு மட்டுமே உள்ளது. இது UTF-8 இல் குறியிடப்பட வேண்டும். காப்பகப்படுத்தும் நோக்கத்திற்காக மட்டுமே உருவாக்கப்பட்ட சிறப்பு-நோக்க மேனிஃபெஸ்ட் தலைப்புகள் JAR கோப்புகள் MANIFEST.MF கோப்பைப் பயன்படுத்த வேண்டாம். ஜேஏஆர் கோப்புகளின் பெரும்பாலான பயன்பாடுகள் எளிய காப்பகப்படுத்துதல் மற்றும் சுருக்கத்தைத் தாண்டி, வெளிப்படையான கோப்பில் சிறப்புத் தகவல்கள் தேவைப்படுகின்றன. அம்சங்கள் டெவலப்பர்கள் தங்கள் ஜாடிக்கு பல பயனுள்ள அம்சங்களை வரையறுக்க மாநிஃபெஸ்ட் அனுமதிக்கிறது. பண்புகள் முக்கிய மதிப்பு ஜோடிகளில் குறிப்பிடப்படுகின்றன. பயன்பாடுகள் ஒரு JAR கோப்பில் ஒரு பயன்பாடு இருந்தால், ஜாவா மெய்நிகர் இயந்திரம் பயன்பாட்டின் நுழைவு புள்ளியை அறிந்து கொள்ள வேண்டும். ஒரு நுழைவு புள்ளி என்பது பொது நிலையான வெற்றிட பிரதான (சரம் [] ஆர்க்ஸ்) முறையைக் கொண்ட எந்த வகுப்பையும் குறிக்கிறது. இந்தத் தகவல் வெளிப்படையான மெயின்-கிளாஸ் தலைப்பில் வழங்கப்படுகிறது, இது பொதுவான வடிவத்தைக் கொண்டுள்ளதுஃ மெயின்-கிளாஸ்ஃ com.example.MyClassName இந்த எடுத்துக்காட்டில் com.example.MyClassName. மெயின் () பயன்பாட்டு வெளியீட்டில் செயல்படுத்தப்படுகிறது. தொகுப்பு முத்திரையிடல் விருப்பப்படி, ஒரு ஜேஏஆர் கோப்பில் உள்ள ஒரு தொகுப்பை சீல் செய்யலாம், அதாவது அந்த தொகுப்பில் வரையறுக்கப்பட்ட அனைத்து வகுப்புகளும் ஒரே ஜேஏஆர் கோப்பில் காப்பகப்படுத்தப்படுகின்றன. மென்பொருளில் உள்ள வகுப்புகளிடையே பதிப்பு நிலைத்தன்மையை உறுதிப்படுத்த அல்லது பாதுகாப்பு நடவடிக்கையாக ஒரு தொகுப்பு சீல் வைக்கப்படலாம். ஒரு தொகுப்பை முத்திரையிட, ஒரு பெயர் உள்ளீடு தோன்ற வேண்டும், அதைத் தொடர்ந்து முத்திரையிடப்பட்ட தலைப்பு, அதாவதுஃ பெயர்ஃ மை கம்பெனி/மை பேக்கேஜ்/முத்திரையிடப்பட்டதுஃ உண்மை பெயர் தலைப்பின் மதிப்பு என்பது தொகுப்பின் தொடர்புடைய பாதை பெயர். ஒரு கோப்பு பெயரிலிருந்து வேறுபடுத்துவதற்கு இது '/' உடன் முடிவடைகிறது என்பதை நினைவில் கொள்க. பெயர் தலைப்பைப் பின்தொடரும் எந்த தலைப்புகளும், இடைப்பட்ட வெற்று கோடுகள் இல்லாமல், பெயர் தலைப்பில் குறிப்பிடப்பட்டுள்ள கோப்பு அல்லது தொகுப்புக்கு பொருந்தும். மேலே உள்ள எடுத்துக்காட்டில், முத்திரையிடப்பட்ட தலைப்பு பெயர்ஃ மை கம்பெனி/மை பேக்கேஜ் தலைப்புக்குப் பிறகு இடையிடையே வெற்று கோடுகள் இல்லாததால், முத்திரையிடப்பட்ட தலைப்பு மை கம்பெனி/மை பேக்கேஜ் தொகுப்புக்கு (மட்டுமே) பொருந்தும். சீல் செய்யப்பட்ட தொகுப்புகளின் அம்சம் ஜாவா 9 இல் அறிமுகப்படுத்தப்பட்ட ஜாவா இயங்குதள தொகுதி அமைப்பால் காலாவதியானது, இதில் தொகுதிகள் தொகுப்புகளைப் பிரிக்க முடியாது. தொகுப்பு பதிப்பு பல வெளிப்படையான தலைப்புகள் பதிப்பு தகவல்களைக் கொண்டுள்ளன. ஒவ்வொரு தொகுப்புக்கும் ஒரு தொகுப்பு தலைப்புகளை ஒதுக்கலாம். பதிப்பு தலைப்புகள் தொகுப்புக்கான பெயர் தலைப்புக்குக் கீழே நேரடியாகத் தோன்றும். இந்த எடுத்துக்காட்டு அனைத்து பதிப்பு தலைப்புகளையும் காட்டுகிறதுஃ பெயர்ஃ ஜாவா/பயன்பாடு/விவரக்குறிப்பு-தலைப்புஃ "ஜாவா பயன்பாட்டு வகுப்புகள்" விவரக்குறிப்பு-பதிப்புஃ "1.2" விவரக்குறிப்பு-விற்பனையாளர்ஃ "சன் மைக்ரோசிஸ்டம்ஸ், இன்க்". செயல்படுத்தல்-தலைப்புஃ "java.util" செயல்படுத்தல்-பதிப்புஃ "பில்ட்57" செயல்படுத்தல்-விற்பனையாளர்ஃ "சன் மைக்ரோசிஸ்டம்ஸ், இன்க்". பல வெளியீடு ஒரு ஜாடி விருப்பப்படி பல வெளியீட்டு ஜாடியாக குறிக்கப்படலாம். பல வெளியீட்டு அம்சத்தைப் பயன்படுத்துவது நூலக உருவாக்குநர்களை ஜாவா இயக்க நேரத்தின் பதிப்பைப் பொறுத்து வெவ்வேறு குறியீடுகளை ஏற்ற அனுமதிக்கிறது. இது டெவலப்பர்கள் பொருந்தக்கூடிய தன்மையை தியாகம் செய்யாமல் புதிய அம்சங்களைப் பயன்படுத்த அனுமதிக்கிறது. வெளியீட்டில் பின்வரும் அறிவிப்பைப் பயன்படுத்தி ஒரு பல வெளியீட்டு ஜாடி இயக்கப்படுகிறதுஃ பல வெளியீடுஃ உண்மையான சார்பு MANIFEST.MF கோப்பு ஒரு பயன்பாட்டை இயக்குவதற்கு ஏற்றப்பட வேண்டிய அனைத்து வகுப்புகளையும் குறிப்பிட பயன்படுத்தப்படலாம். கிளாஸ்-பாத் உள்ளீடுகள் இடைவெளிகளுடன் வரையறுக்கப்பட்டுள்ளன என்பதை நினைவில் கொள்க, கணினி பாதை வரையறையுடன் அல்லஃ கிளாஸ்-பாத்ஃ. அப்பாச்சி எறும்பு ஜிப்/ஜேஏஆர் ஆதரவு யுனிக்ஸ் கோப்பு முறைமை நீட்டிப்புகளுக்கான ஆதரவு உட்பட ஜிப் மற்றும் ஜேஏஆர் காப்பகங்களைப் படிக்கவும் எழுதவும் அப்பாச்சி எறும்பு கட்டமைக்கும் கருவிக்கு அதன் சொந்த தொகுப்பு உள்ளது. org.apache.tools.zip தொகுப்பு அப்பாச்சி மென்பொருள் அறக்கட்டளை உரிமத்தின் கீழ் வெளியிடப்பட்டுள்ளது மற்றும் எறும்புக்கு வெளியே பயன்படுத்தக்கூடிய வகையில் வடிவமைக்கப்பட்டுள்ளது. தொடர்புடைய வடிவங்கள் பல தொடர்புடைய கோப்பு வடிவங்கள் ஜேஏஆர் வடிவத்தில் உருவாக்கப்படுகின்றனஃ வார் (வலை பயன்பாட்டு காப்பகம்) கோப்புகள், ஜாவா காப்பகங்கள், எக்ஸ்எம்எல் கோப்புகளை சேமிக்கவும், ஜாவா வகுப்புகள், ஜாவா சர்வர் பக்கங்கள் மற்றும் வலை பயன்பாடுகளுக்கான பிற பொருள்கள். RAR (வள அடாப்டர் காப்பகம்) கோப்புகள் (RAR கோப்பு வடிவமைப்புடன் குழப்பமடையக்கூடாது), ஜாவா காப்பகங்கள், XML கோப்புகள், ஜாவா வகுப்புகள் மற்றும் J2EE இணைப்பு கட்டமைப்பு (JCA) பயன்பாடுகளுக்கான பிற பொருள்களை சேமிக்கவும். EAR (நிறுவன காப்பகம்) கோப்புகள் XML கோப்புகள், ஜாவா வகுப்புகள் மற்றும் நிறுவன பயன்பாடுகளுக்கான JAR, WAR மற்றும் RAR ஜாவா காப்பக கோப்புகள் உள்ளிட்ட பிற பொருட்களை இணைக்கும் கலப்பு ஜாவா காப்பகங்களை வழங்குகின்றன. எஸ்ஏஆர் (சேவை காப்பகம்) என்பது ஈஏஆர் போன்றது. இது ஒரு service.xml கோப்பு மற்றும் அதனுடன் இணைந்த JAR கோப்புகளை வழங்குகிறது. ஜாவா காப்பக வடிவத்தின் ஒரு மாறுபாடான APK (ஆண்ட்ராய்டு பயன்பாட்டு தொகுப்பு), ஆண்ட்ராய்டு பயன்பாடுகளுக்கு பயன்படுத்தப்படுகிறது. ஏ. ஏ. ஆர் (ஆண்ட்ராய்டு காப்பகம்) ஆண்ட்ராய்டு நூலகங்களின் விநியோகத்திற்கு பயன்படுத்தப்படுகிறது, பொதுவாக மாவென் வழியாக. PAR (திட்ட காப்பகம்)-எக்லிப்ஸ் கன்னி OSGi பயன்பாட்டு சேவையகத்தால் ஆதரிக்கப்படுகிறது, பல-கட்டு OSGi பயன்பாடுகளை ஒற்றை காப்பகமாக பயன்படுத்த அனுமதிக்கிறது மற்றும் அதே சேவையகத்தில் பயன்படுத்தப்படும் பிற PAR-அடிப்படையிலான பயன்பாடுகளிலிருந்து தனிமைப்படுத்தலை வழங்குகிறது. கேஏஆர் (கராஃப் காப்பகம்)-அப்பாச்சி கராஃப் ஓஎஸ்ஜிஐ பயன்பாட்டு சேவையகத்தால் ஆதரிக்கப்படுகிறது, பல-கட்டு, பல அம்ச ஓஎஸ்ஜிஐ பயன்பாடுகளைப் பயன்படுத்த அனுமதிக்கிறது. JAR நரக ஜாவா இயங்குதள தொகுதி அமைப்பு திறந்த தொகுப்பு மரபுகள் JAD (கோப்பு வடிவம்) GIFAR தாக்குதல். ஒரு நிலையான நூலகங்கள் குறிப்புகள் வெளிப்புற இணைப்புகள் JAR கோப்பு விவரக்குறிப்பு JAR கோப்பு கண்ணோட்டம் காப்பக வடிவங்கள் ஜாவா இயங்குதளம்