2012-03-30 5 views
18

में जेएनआई हेडर फ़ाइल जेनरेट करने के लिए कैसे मैं एक जेएनआई हेडर फ़ाइल उत्पन्न करने के लिए ग्रहण का उपयोग कर रहा हूं। मैं program files\java\jre6\bin में देखा और .exe और .dll फ़ाइलों का एक बहुत कुछ पाया है, लेकिन मैं कमांड javah जो सी पुस्तकालयों के लिए बाइंडिंग बनाने के लिए JNI प्रयोग करने के लिए दस्तावेज में था नहीं पा सके।
कोई मदद?ग्रहण

+0

इस बाहर की जाँच करें : http: // stackoverflow।कॉम/प्रश्न/10483959/जावा-त्रुटि-एंड्रॉइड-एप-गतिविधि-नहीं मिला/25 9 8 9 225 # 25 9 8 9 225 –

उत्तर

32

javah.exe के लिए एक नया बाहरी उपकरण परिभाषित करने के लिए निम्न पैनल का उपयोग करें।

javah.exe उपकरण पर "स्थान" बिंदु।

सेट "कार्य निर्देशिका"

${workspace_loc:/${project_name}/bin} 

"तर्क" करने के लिए सेट करने के लिए:

-classpath ${project_classpath} -v -d ${workspace_loc:/${project_name}/src} ${java_type_name} 

enter image description here

उपकरण चलाने के लिए, पैकेज एक्सप्लोरर और समय में जावा स्रोत फ़ाइल पर प्रकाश डाला औज़ार।

enter image description here

प्रेस F5 वें परियोजना ताज़ा करने के लिए नई जनरेट फ़ाइल को देखने के लिए।

+1

क्या आप तर्कों की व्याख्या कर सकते हैं ... यह वास्तव में सहायक होगा ... धन्यवाद – aProgrammer

+1

"चर .." पर क्लिक करें बटन। प्रत्येक के लिए विवरण वहां सूचीबद्ध है। – Java42

+0

वू हू! शानदार कार्य। –

2

बस कुछ जानकारी ...

दुर्भाग्य से समाधान ऊपर मेरे लिए बाहर काम नहीं किया है, लेकिन इस सूत्र में समाधान किया:

Using javah -jni with an Eclipse project structure

ऊपर उल्लेख किया तर्क के साथ

, मुझे मिल गया :

Exception in thread "main" java.lang.IllegalArgumentException: Not a valid class name:path/to/project

मुझे पता चला, कि इस समस्या में एक अंतरिक्ष चरित्र था मेरी परियोजना के लिए रास्ता। उद्धरणों में पथ लपेटने से ऊपर के समाधान के लिए मदद मिली।

0

स्थान

// javah.exe पथ

C: \ Program Files \ जावा \ jdk1.7.0_79 \ बिन \ javah.exe

कार्य निर्देशिका

$ {workspace_loc:/$ {project_name}/bin}

तर्क

-classpath $ {project_classpath} -v -d $ {workspace_loc:/$ {PROJECT_NAME}/JNI} $ {java_type_name}

खुला जावा वर्ग और चलाने के उपकरण