2009-10-26 4 views
16

Eclipse 용 Java/C++ 프로젝트 결합을 성공적으로 관리 한 사람이 있습니까?Eclipse (Java/C++ 통합)를 사용하여 JNI 응용 프로그램 개발

내가하려는 것은 매우 간단합니다.

1) Compile my Java sources 
2) Run Javah to create the JNI interface 
3) Compile all the C/C++ sources 
4) Link native shared library + package the JAR 

힌트 또는 실제 프로젝트도 환영합니다.

(이클립스 3.5)

+0

이것은 정말로 당신의 질문과 관련이 없지만 궁금합니다. JNI/C++을 사용해야합니까? 그렇다면 무엇을 위해서입니까? Java NIO가 할 수있는 일인가요? – cletus

+0

JNI는 Java와 일부 오래된 암호화 하드웨어 사이의 다리이며 장치 용 API는 c 라이브러리로만 사용할 수 있습니다. 지금 당장 Java 클래스와 C의 네이티브 파트에 대해 두 개의 이클립스 프로젝트가 있습니다. 불필요한 것으로, 이클립스가 하나의 작업을 수행 할 수 있어야한다고 생각합니다. :/ – ointment

답변

4

이 정말 ant처럼 빌드 시스템에 대한 작업처럼 들린다. ant builder을 사용하도록 Java 프로젝트를 구성하기 만하면됩니다. C++ 및 Java 프로젝트에 대한 언어 별 지원 및 프로젝트의 클릭 한 번 빌드에 대한 이점을 얻을 수 있습니다.

+0

감사합니다. 이 부분을 살펴 보겠습니다. – ointment

1

리눅스와 Windows에서만 Eclipse를 사용하여 JNI 프로젝트를 실현하기 위해 ant cpptasks을 사용하고 있습니다. MSVC (Windows) 및 GNU C++ 컴파일러 (이전에 Visual Studio Magic로 완료 되었기 때문에 모든 컴파일러 및 링커 플래그를 제대로 가져 오는 작업)를 실행하는 데는 약간의 작업이 필요했지만 실제로는 그만한 가치가있었습니다.

javah와 언급 한 다른 모든 작업으로 C++ 헤더를 생성하려면 Ant이 아마도 선택 도구 일 것입니다.

7

http://www.cs.umanitoba.ca/~eclipse/8-JNI.pdf 나는 이것이 당신이 원했던 것 같아. 조금 어쩌면.

+0

해당 문서에서 Eclipse 참조가 표시되지 않습니다. 일반적인 JNI 개요의 경우 Oracle의 Java 기본 인터페이스 - 프로그래머 지침 및 사양 (http://docs.oracle.com/javase/1.5.0/docs/guide/jni/spec/jniTOC.html)보다 뛰어난 것은 없습니다. . @ ointment의 원래 문제점 (현재 겪고있는)에 대해서는 C++/Java JNI 프로젝트를 빌드 할 때 좋은 구식 명령 줄 인터페이스 (Ant 태스크를 통해 가능)를 사용해야 할 것입니다. – StockB

관련 문제