Skip to content

想请教一下关于rocksjava编译的问题 #1

@Watermelon12345

Description

@Watermelon12345

哈喽,我最近需要用ycsb测试本地修改了源码的rocksdb,一直block在“如何将rocksdb源码编译成jar包”。看了你关于rocksjava的文章很受启发,但是在文章中仍有一些问题不太清楚,想要请教一下。

  1. 在文章:https://github.com/HustCoderHu/myNotes/blob/master/database/YCSB.md
    中用cmake编译源码时,提到“将 rocksdbjni-5.18.0.jar 放到 ycsb/lib 目录下”——到这一步是否已经生成了需要的jar包?

  2. 接着问题1,你又在后面补充了:
    CMake Deprecation Warning at /usr/local/share/cmake-3.13/Modules/UseJava.cmake:1318 (message):
    create_javah: this command will no longer be supported starting with
    version 10 of JDK. Update your project by using command
    add_jar(GENERATE_NATIVE_HEADERS) instead.
    Call Stack (most recent call first):
    java/CMakeLists.txt:373 (create_javah)
    create_javah( TARGET rocksdbjni_headers
    CLASSES ${NATIVE_JAVA_CLASSES}
    CLASSPATH rocksdbjni_classes ${JAVA_TESTCLASSPATH}
    OUTPUT_DIR ${JNI_OUTPUT_DIR} )

add_jar(target_name
[SOURCES] source1 [source2 ...] [resource1 ...]
[INCLUDE_JARS jar1 [jar2 ...]]
[ENTRY_POINT entry]
[VERSION version]
[OUTPUT_NAME name]
[OUTPUT_DIR dir]
)
add_jar(rocksdbjni_headers
INCLUDE_JARS ${NATIVE_JAVA_CLASSES}
OUTPUT_DIR ${JNI_OUTPUT_DIR})
make rocksdbjava -jN

这段内容,我没理解这里的目的是?以及这些参数需要在哪里配置?

  1. 不清楚你是否能提供你编译用的cmakelists.txt文件呢,我这边一直说“不存在xxx规则”?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions