1

现在我正在尝试将 JavaCV 添加到我的项目中,但我一直坚持从 javacpp.jar 获取 .so 库。

文档

  1. 将 javacpp.jar 文件复制到 libs/ 子目录中,然后
  2. 运行以下命令在 libs/armeabi/ 中生成 *.so 库文件:
    $ java -jar libs/javacpp.jar -classpath bin/
    -classpath bin/classes/ \
    -properties<android-arm|android-x86>
    -Dplatform .root=/path/to/android-ndk/ \
    -Dplatform.compiler=/path/to/<arm-linux-androideabi-g++|i686-linux-android-g++>
    -d libs/<armeabi|x86>/


所以我的版本看起来像这样

java -jar libs/javacpp.jar -cp /build/classes/ -properties android-arm
-Dplatform.root=D:/AMAZING_THINGS/android-ndk-r13
-Dplatform.compiler=D:/AMAZING_THINGS/android-ndk-r13 /toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin/arm-linux-androideabi-g++ -d libs/armeabi

我正在尝试将其提取到我的项目文件夹中并收到此错误:

Exception in thread "main" java.lang.NoClassDefFoundError: build/classes/main/co
m/mobilestreamer/MobileStreamer$$Lambda$1 (wrong name: com/mobilestreamer/Mobile
Streamer$$Lambda$1)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(Unknown Source)
        at java.security.SecureClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.defineClass(Unknown Source)
        at java.net.URLClassLoader.access$100(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at org.bytedeco.javacpp.tools.UserClassLoader.findClass(UserClassLoader.
java:72)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Unknown Source)
        at org.bytedeco.javacpp.tools.ClassScanner.addClass(ClassScanner.java:61
)
        at org.bytedeco.javacpp.tools.ClassScanner.addMatchingFile(ClassScanner.
java:71)
        at org.bytedeco.javacpp.tools.ClassScanner.addMatchingDir(ClassScanner.j
ava:83)
        at org.bytedeco.javacpp.tools.ClassScanner.addMatchingDir(ClassScanner.j
ava:81)
        at org.bytedeco.javacpp.tools.ClassScanner.addMatchingDir(ClassScanner.j
ava:81)
        at org.bytedeco.javacpp.tools.ClassScanner.addMatchingDir(ClassScanner.j
ava:81)
        at org.bytedeco.javacpp.tools.ClassScanner.addMatchingDir(ClassScanner.j
ava:81)
        at org.bytedeco.javacpp.tools.ClassScanner.addMatchingDir(ClassScanner.j
ava:81)
        at org.bytedeco.javacpp.tools.ClassScanner.addPackage(ClassScanner.java:
95)
        at org.bytedeco.javacpp.tools.Builder.classesOrPackages(Builder.java:607
)
        at org.bytedeco.javacpp.tools.Builder.main(Builder.java:805)

由于我是 cmd 和与该领域相关的其他工作人员的新手,因此我无法解决此问题。那么我应该怎么做才能让它工作呢?
谢谢。

4

0 回答 0