2009-02-08 4 views
3

JRuby에서 EventMachine 등을 사용하려고했습니다. 네이티브 확장에 대해 오류가 발생합니다. 나는 이것이 자바 제한으로 인한 것이라고 생각한다. 필자는 Windows를 사용하고 있다는 사실이 문제를 더욱 복잡하게 만든다고 생각합니다. 약간의 설명은 인정 될 것이다. JRuby에서 사용할 수있는 확장 기능은 무엇입니까? 어떻게 알 수 있습니까? 감사.JRuby/Windows 및 (기본) 확장은 어떻게 구별합니까?

답변

1

jruby에서 네이티브 확장을 사용하는 쉬운 방법은 없습니다. 네이티브 확장은 자바에서 구현하지 않고 jruby에서 호출 할 수없는 c 코드를 호출합니다. 제쳐두고 몇 가지 확장 기능은 jruby 포트를보고 있습니다 (예 : 언급 한 EventMachine).

과 지금까지 난 당신이 JRuby를은과 함께 문서를 읽을 보석/확장자를 사용을 시도하거나 소스

를 읽을 수 있는지 볼 수있는 유일한 방법을 알고
2

JRuby를 불행히도, 네이티브 확장을 지원하지 않습니다, 이는 C 구현과 관련된 특정 메모리 및 런타임 세부 정보에 의존하기 때문입니다.
는 일반적으로 당신은 당신이 같은 "네이티브 확장 '문제와 관련 this thread을 참조 할 수 있습니다, LDomagala's answer를 완료 대체 잘 작동합니다 JVM에 상응하는 라이브러리 ...

을 찾을 수 있습니다

일부 설치 스크립트는 RUBY_PLATFORM에 의존하여 OS에 따라 기본 확장을 빌드할지 여부를 결정할 수 있습니다. 당신이 창문에 있다면 그것들을 만들지 않을 것입니다.

네이티브 컴파일을 피하는 또 다른 방법은 ENV var 'NORUBYEXT'을 사용하는 것입니다.

하지만 여전히 루비 설치 스크립트에서 약간의 조정이 필요할 수 있습니다 ...

관련 문제