ஜாவா நேட்டிவ் இன்டர்ஃபேஸ் (JNI) உடன் தொடங்குவது

Getting Started With Java Native Interface



ஜாவா நேட்டிவ் இன்டர்ஃபேஸ், சுருக்கமாக ஜேஎன்ஐ, ஜாவா டெவலப்பர்கள் ஜாவாவில் உள்ள மற்ற புரோகிராமிங் மொழிகளிலிருந்து குறியீடுகளையும் துணுக்குகளையும் இயக்க அனுமதிக்கும் ஒரு நிரலாக்க இடைமுகமாகும். இது அத்தியாவசிய ஜாவா மென்பொருள் மேம்பாட்டு கிட் அல்லது SDK உடன் வருகிறது (நாங்கள் அதை வேறு டுடோரியலில் உள்ளடக்குவோம்).

ஜாவா பயன்பாடுகளில் ஜாவா மெய்நிகர் இயந்திரத்தில் பதுங்க API ஐ அழைப்பதற்கான அதன் அம்சத்திற்காக JNI மதிக்கப்படுகிறது. இது சொந்த பயன்பாட்டின் குறியீட்டிற்குள் ஜாவா குறியீட்டைப் பயன்படுத்த டெவலை இயக்குகிறது.







நீங்கள் ஜாவாவுடன் சிறிது நேரம் வேலை செய்திருந்தால், தவிர்க்க முடியாமல் உங்கள் வழியில் வரும் பல செயல்திறன் சிக்கல்களை நீங்கள் ஏற்கனவே சந்தித்திருக்கலாம். தாய் மொழியில் ஒரே குறியீட்டை இயக்கும்போது இது ஒரு பிரச்சனையாக இருக்காது, இது தொகுக்கப்பட்ட மாதிரியில் படிக்கும்போது பதினெட்டு மடங்கு வேகமாகச் செயல்பட முடியும். அதைத் தவிர, மற்ற மொழிகளில் உள்ள சொந்தக் குறியீடுகளுடன் காலாவதியான/பொருந்தாத வன்பொருள் நடைமுறைகளையும் நீங்கள் பயன்படுத்தலாம்.



ஜாவா அப்ளிகேஷனில் இருந்து இயந்திரம் சி/சி ++ குறியீட்டை எவ்வாறு அழைக்கலாம் என்பதை இந்த டுடோரியல் நிரூபிக்கும்.



முன்நிபந்தனைகள்

இந்த வழிகாட்டியுடன் சரியாகப் பின்பற்ற உங்களுக்கு சில விஷயங்கள் தேவைப்படும். இதில் JVM உடன் Java compiler, அல்லது Javac.exe, மற்றும் சொந்த முறை C ஜெனரேட்டர் (javah.exe) ஆகியவை அடங்கும். இவை மூன்றும் மென்பொருள் மேம்பாட்டு கருவியில் கட்டமைக்கப்பட்டுள்ளன, எனவே உங்களிடம் இருந்தால் நீங்கள் அனைவரும் நன்றாக இருக்கிறீர்கள். இந்த மூன்றைத் தவிர, நேட்டிவ் தலைப்பு கோப்புகள் மற்றும் முழுமையான நூலகக் கோப்புகள் உட்பட JNI ஐ வரையறுக்கும் கோப்புகளும் உங்களுக்குத் தேவைப்படும்.





நிச்சயமாக, சி மற்றும் சி ++ குறியீடுகளை இயக்குவது குறித்த டுடோரியலில், பகிரப்பட்ட நூலகத்தை உருவாக்க சி கம்பைலரையும் பயன்படுத்துவோம்.

ஜேஎன்ஐ கூறுகள்

ஜேஎன்ஐ முக்கியமாக h மற்றும் ஜாவா ஆகிய இரண்டு கூறுகளால் இயக்கப்படுகிறது. H என்பது ஜாவா குறியீட்டைக் கொண்ட சொந்த குறியீடுகளை மாற்றும் தலைப்பு கோப்பு கூறு ஆகும், அதேசமயம் ஜாவா அதை உருவாக்குகிறது, இதனால் இந்த கோப்பை பயன்பாட்டு தலைப்பு கோப்புகளுக்கு ஏற்ற முடியும்.



ஜாவா குறியீட்டிலிருந்து சி/சி ++ ஐ அழைத்தல்

படி 1: ஜாவாவில் குறியீட்டை எழுதுதல்

குறியீடு முதலில் ஜாவாவில் எழுதப்பட்டது மற்றும் மூன்று நிபந்தனைகளுக்கு இணங்குகிறது. முதலில், இது பின்னர் அழைக்கப்படும் சொந்த முறையுடன் எழுதப்பட்டுள்ளது. இரண்டாவதாக, இது சொந்த குறியீட்டின் ஒரு பகுதியாக இருக்கும் பகிரப்பட்ட நூலகத்தை ஏற்ற வேண்டும், கடைசியாக, அது சொந்த முறைகளை அழைக்க வேண்டும்.

மேலும் விளக்க இந்த குறியீட்டைப் பயன்படுத்துவோம்:

அறிவிப்பு வரிகள் 3 மற்றும் 6; சொந்த முறைகள் சேர்க்கப்பட்ட வரிகள் இவை. பகிரப்பட்ட நூலகங்களை ஏற்றும் குறியீடு 10 வது வரிசையில் அமைந்துள்ளது, இது 12 முதல் 15 வரிகளுக்கு இடையில் முறையைத் தூண்டுவதற்கு வழிவகுக்கிறது.

படி 2: ஜாவா குறியீட்டை பைட்கோடாக தொகுத்தல்

இரண்டாவது படி ஜாவா குறியீட்டைத் தொகுக்க வேண்டும். ஜாவாக் கம்பைலர் இங்கே நமக்கு வேலை செய்ய முடியும்; கீழே உள்ள கட்டளையை வழங்கவும்:

$ javac உதாரணம் 1.ஜாவா

படி 3: C/C ++ தலைப்பு கோப்புகளை உருவாக்கவும்

அடுத்து, சொந்த மொழி தலைப்பு கோப்புகளை உருவாக்க வேண்டும். இந்த தலைப்பு கோப்புகள் சொந்த குறியீடுகளின் கையொப்பங்களுக்கு அதிகாரம் அளிக்கிறது.

இந்த தலைப்புக் கோப்புகளை ஜாவா சொந்த கருவி மூலம் உருவாக்கலாம், பின்வரும் கட்டளையைப் பயன்படுத்தி SDK உடன் தொகுக்கப்பட்ட ஒரு சி ஸ்டப் ஜெனரேட்டர்:

ஜாவா உதாரணம் 1

பின்வரும் வெளியீடு திரும்ப வேண்டும்:

படி 4: சொந்த குறியீட்டை எழுதுதல்

இங்கே நாம் C/C ++ குறியீட்டை எழுதுவோம். படி 1 இல் நாங்கள் செய்த அறிவிப்புகளை ஒத்திருக்கும் அனைத்து கையொப்பங்களையும் நீங்கள் கவனிக்க வேண்டும்.

சி மொழியில் எழுதப்பட்ட செயல்படுத்தல் பின்வருமாறு:

படி 5: பகிரப்பட்ட நூலகத்தை உருவாக்கவும்

பகிரப்பட்ட நூலகத்தை எந்த தொகுப்பாளருடனும் உருவாக்கலாம். பகிரப்பட்ட நூலகத்தில் சொந்தக் குறியீடு இருப்பதால், நாம் ஒன்றை உருவாக்க வேண்டும்.

படி 6: உங்கள் திட்டத்தை தொடங்கவும்

இந்த படி குறியீட்டை மதிப்பிடுதல் மற்றும் நிரலில் ஏதேனும் சிக்கல்களை அடையாளம் காண்பது. இது ஜாவா இயக்க நேர சூழலை உள்ளடக்கியது, ஏனெனில் குறியீடு முதன்மையாக ஜேவிஎம்மில் இயங்கப் போகிறது.

பின்வரும் கட்டளையை வழங்கவும்:

ஜாவா எடுத்துக்காட்டு 1

அது திரும்ப வேண்டும்:

ஜாவா நேட்டிவ் இடைமுகத்தைப் பயன்படுத்துவதற்கான எங்கள் குறுகிய தொடக்க வழிகாட்டியாக அது இருந்தது. நீங்கள் பயனுள்ளதாக இருந்தீர்கள் என்று நம்புகிறோம்.

ஜாவா பயன்பாடுகளை, குறிப்பாக ஸ்மார்ட்போன்களுக்கான ஆண்ட்ராய்டு அப்ளிகேஷன்களை உருவாக்க விரும்பும் எவருக்கும் ஜேஎன்ஐ உடன் எப்படி வேலை செய்வது என்று கற்றுக்கொள்வது அவசியம்.