Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
设置CMake的自定义Java版本_Java_Cmake_Scidb - Fatal编程技术网

设置CMake的自定义Java版本

设置CMake的自定义Java版本,java,cmake,scidb,Java,Cmake,Scidb,我正在尝试安装一个工具(SciDB);其安装程序使用CMake。在某一点上,它需要Java 1.8,而系统上没有安装Java 1.8 -- Could NOT find Java (missing: Java_JAVA_EXECUTABLE Java_JAR_EXECUTABLE Java_JAVAC_EXECUTABLE Java_JAVAH_EXECUTABLE Java_JAVADOC_EXECUTABLE) CMake Error at src/jdbc/CMakeLists.txt

我正在尝试安装一个工具(SciDB);其安装程序使用CMake。在某一点上,它需要Java 1.8,而系统上没有安装Java 1.8

-- Could NOT find Java (missing:  Java_JAVA_EXECUTABLE Java_JAR_EXECUTABLE Java_JAVAC_EXECUTABLE Java_JAVAH_EXECUTABLE Java_JAVADOC_EXECUTABLE) 
CMake Error at src/jdbc/CMakeLists.txt:5 (message):
  Java 1.8 is currently the only supported version for building JDBC!
我把它安装在我的主文件夹的某个地方;如何告诉CMake使用我的版本


我尝试按照建议设置
$JAVA\u HOME
$PATH
变量,但没有结果。

SciDB使用自己版本的FindJava.cmake(位于
cmake/Modules/FindJava.cmake
)。SciDB需要一个特定的环境,并且用户已经安装了OpenJDK 1.8版

使用JAVA_HOME的一种方法是在源代码中修改
cmake/Modules/FindJava.cmake
,并添加
${JAVA_HOME}/bin

    set(_JAVA_PATHS
        $ENV{JAVA_HOME}/bin
        /usr/lib/jvm/java-1.8.0-openjdk/bin
        /usr/lib/jvm/java-1.8.0-openjdk-amd64/bin
        /usr/lib/jvm/java-1.8.0-openjdk.x86_64/bin
    )

注意:将检查
$Java_HOME
中的Java版本。

SciDB使用其自己的FindJava.cmake版本(位于
cmake/Modules/FindJava.cmake
)。SciDB需要一个特定的环境,并且用户已经安装了OpenJDK 1.8版

使用JAVA_HOME的一种方法是在源代码中修改
cmake/Modules/FindJava.cmake
,并添加
${JAVA_HOME}/bin

    set(_JAVA_PATHS
        $ENV{JAVA_HOME}/bin
        /usr/lib/jvm/java-1.8.0-openjdk/bin
        /usr/lib/jvm/java-1.8.0-openjdk-amd64/bin
        /usr/lib/jvm/java-1.8.0-openjdk.x86_64/bin
    )

注意:将检查
$Java\u HOME
中的Java版本

根据
FindJava.cmake
脚本,设置
Java\u HOME
环境变量应该有效。(设置此变量,但不导出它。这可能是个问题)。您使用的CMake版本是什么?根据
FindJava.CMake
script,设置
JAVA\u HOME
环境变量应该可以工作。(设置此变量,但不导出它。这可能是个问题)。您使用的CMake版本是什么?