在Java8下启动Cassandra(和相关工具)的CCM扩展

ccm-java8的Python项目详细描述


ccm-java8型

PyPi Badge

当前支持的平台:

  • 马科斯
  • Linux系统
    • 拱门
    • 基于Debian
    • 基于RHEL

使用

ccm-java8PyPI上提供。在

  1. 安装在CCM旁边:

    pip install ccm ccm-java8
    
  2. 正常执行CCM指令。在

    Cassandra和各种工具将使用java8vm启动。在

    如果找不到Java8VM,CCM将拒绝启动。 如果出现这种情况,请安装Java 8。在

动机

许多操作系统支持多个Java版本的并行安装,但是只能选择一个版本作为默认版本 (即java的哪个版本在$PATH上)。在

Cassandra的bin/cassandra启动脚本更喜欢$JAVA_HOME下的java二进制文件,如果没有设置$JAVA_HOME,则返回到使用$PATH上的{}二进制文件。 因此,除非$JAVA_HOME或平台默认值显式设置为Java8安装,否则Cassandra将尝试在不兼容的Java版本下启动,但失败了。在

ccm-java8的工作原理是注册一个ccm扩展,当ccm加载该扩展时,该扩展显式地将JAVA_HOME环境变量设置为包含java8安装的目录,否则将引发异常。在

旧版本用于在append_to_server_env函数中注册一个钩子,但是对于工具(nodetoolsstabledump等)不会调用这个函数。 当前版本在CCM Python进程中全局设置JAVA_HOME环境变量,该变量由CCM启动的所有子进程继承。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Cassandra docker无法通过JMX连接   java以编程方式在图片模式下启用图片   java访问json数组中的json数组   swing Java 2D API:空指针异常   java Storm 2.0.0内存不足   java为什么Splitter在Spring Integration中处理集合项时直接返回集合?   java Spring启动到Postgres数据库驱动程序问题   java如何将对象围绕其中心旋转90度?   无法返回变量。“java:找不到变量”   通过BigInteger进行Java基转换   在Java中获取日期格式   java构建具有依赖关系的jar并将其绑定到tar中。gz使用maven组装   java为什么Guice在main中从UncaughtExceptionHandler抛出$ComputeException?   spring升级到Java7时有哪些陷阱   java从JTable向数组获取值   java Android在启动新活动时会杀死多个以前的活动   postgresql是否可以在批处理过程中运行java命令?   安卓使用Java代码创建文件上传请求   java一些元素神奇地没有从ArrayList中删除