Last active
August 29, 2015 14:07
-
-
Save byteit101/4c0617cf879d99e84c99 to your computer and use it in GitHub Desktop.
javaCV JRuby oddness
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
if you download JavaCV and put these file in the bin folder, then running | |
``` | |
javac -cp javacv.jar Test.java | |
ruby -I . test.rb | |
``` | |
Will work for the ruby mat, but not the java mat | |
Making an eclipse/netbeans project to build a jar that depends on the javacv jars works only if the ruby line is not commented out, then java fails |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#<Java::OrgBytedecoJavacpp::opencv_core::Mat:0x5465282c> | |
Test.java:7:in `<init>': java.lang.NoClassDefFoundError: org/bytedeco/javacpp/opencv_core$Mat | |
from java/lang/reflect/Constructor.java:526:in `newInstance' | |
from test.rb:22:in `(root)' | |
from test.rb:22:in `(root)' | |
Caused by: | |
URLClassLoader.java:366:in `run': java.lang.ClassNotFoundException: org.bytedeco.javacpp.opencv_core$Mat | |
from URLClassLoader.java:355:in `run' | |
from AccessController.java:-2:in `doPrivileged' | |
from URLClassLoader.java:354:in `findClass' | |
from ClassLoader.java:425:in `loadClass' | |
from Launcher.java:308:in `loadClass' | |
from ClassLoader.java:358:in `loadClass' | |
from Test.java:7:in `<init>' | |
from NativeConstructorAccessorImpl.java:-2:in `newInstance0' | |
from NativeConstructorAccessorImpl.java:57:in `newInstance' | |
from DelegatingConstructorAccessorImpl.java:45:in `newInstance' | |
from Constructor.java:526:in `newInstance' | |
from JavaConstructor.java:259:in `newInstanceDirect' | |
from ConstructorInvoker.java:79:in `call' | |
from ConstructorInvoker.java:160:in `call' | |
from CachingCallSite.java:316:in `cacheAndCall' | |
from CachingCallSite.java:145:in `callBlock' | |
from CachingCallSite.java:149:in `call' | |
from ConcreteJavaProxy.java:48:in `call' | |
from CachingCallSite.java:316:in `cacheAndCall' | |
from CachingCallSite.java:145:in `callBlock' | |
from CachingCallSite.java:149:in `call' | |
from RubyClass.java:844:in `newInstance' | |
from RubyClass$INVOKER$i$newInstance.gen:-1:in `call' | |
from JavaMethod.java:280:in `call' | |
from ConcreteJavaProxy.java:141:in `call' | |
from CachingCallSite.java:306:in `cacheAndCall' | |
from CachingCallSite.java:136:in `call' | |
from test.rb:22:in `__file__' | |
from test.rb:-1:in `load' | |
from Ruby.java:863:in `runScript' | |
from Ruby.java:856:in `runScript' | |
from Ruby.java:725:in `runNormally' | |
from Ruby.java:574:in `runFromMain' | |
from Main.java:395:in `doRunFromMain' | |
from Main.java:290:in `internalRun' | |
from Main.java:217:in `run' | |
from Main.java:197:in `main' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(from a more complicated app running JavaFX) | |
Exception in thread "JavaFX Application Thread" java.lang.UnsatisfiedLinkError: org.bytedeco.javacpp.opencv_core$Mat.allocate()V | |
at org.bytedeco.javacpp.opencv_core$Mat.allocate(Native Method) | |
at org.bytedeco.javacpp.opencv_core$Mat.<init>(org/bytedeco/javacpp/opencv_core.java:6211) | |
at org.bytedeco.javacpp.helper.opencv_core$AbstractMat.<clinit>(org/bytedeco/javacpp/helper/opencv_core.java:2376) | |
at edu.wpi.first.sfxcv.WebcamSource.<init>(edu/wpi/first/sfxcv/WebcamSource.java:40) | |
at java.lang.reflect.Constructor.newInstance(java/lang/reflect/Constructor.java:526) | |
at RUBY.open(/home/home/patrick/NetBeansProjects/sfx/lib/designer.rb:671) | |
at RUBY.handle(/home/home/patrick/NetBeansProjects/FXMLLoader/lib/fxmlloader/elts.rb:521) | |
at EventHandlerWrapper_1947380757.handle(EventHandlerWrapper_1947380757.gen:13) | |
at EventHandlerWrapper_1947380757.handle(EventHandlerWrapper_1947380757.gen:13) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import org.bytedeco.javacpp.opencv_core.Mat; | |
public class Test | |
{ | |
public Test() | |
{ | |
Mat mat = new Mat(); | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require 'javacv.jar' | |
require 'opencv.jar' | |
require 'javacpp.jar' | |
require 'opencv-linux-x86_64.jar' | |
require 'artoolkitplus.jar' | |
require 'artoolkitplus-linux-x86_64.jar' | |
require 'ffmpeg.jar' | |
require 'ffmpeg-linux-x86_64.jar' | |
require 'flycapture.jar' | |
require 'flycapture-linux-x86_64.jar' | |
require 'libdc1394.jar' | |
require 'libdc1394-linux-x86_64.jar' | |
require 'libfreenect.jar' | |
require 'libfreenect-linux-x86_64.jar' | |
require 'videoinput.jar' | |
p org.bytedeco.javacpp.opencv_core::Mat.new # comment this out and it fails as per the readme | |
p Java::Test.new | |
puts 'Done' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment