为什么可以';我不能将JAVA_HOME和JRE_HOME设置为其他内容吗?

为什么可以';我不能将JAVA_HOME和JRE_HOME设置为其他内容吗?,java,ubuntu,environment-variables,administration,system,Java,Ubuntu,Environment Variables,Administration,System,我正在运行ubuntu,djatoka(在tomcat中运行)无法与OpenJDK一起工作。因此,我将JAVA_HOME和JRE_HOME设置为我下载并导出变量的sunjava。当我启动tomcat时,它会将JRE_报告给我设置的内容 然而,当我实际查看变量时,它们指向OpenJDK,而djatoka不起作用。我找不到它被硬编码的任何地方,甚至当我在catalina.sh中删除变量赋值并从那里导出时,同样的事情也会发生 到底发生了什么事?谢谢 kyle您使用的是什么操作系统?请确保为整个系统而不

我正在运行ubuntu,djatoka(在tomcat中运行)无法与OpenJDK一起工作。因此,我将JAVA_HOME和JRE_HOME设置为我下载并导出变量的sunjava。当我启动tomcat时,它会将JRE_报告给我设置的内容

然而,当我实际查看变量时,它们指向OpenJDK,而djatoka不起作用。我找不到它被硬编码的任何地方,甚至当我在catalina.sh中删除变量赋值并从那里导出时,同样的事情也会发生

到底发生了什么事?谢谢


kyle

您使用的是什么操作系统?请确保为整个系统而不是用户设置这些环境变量。

您使用的是什么操作系统?请确保您正在为整个系统而不是用户设置这些环境变量。

  • 您是否在导出值的同一会话中启动tomcat
  • 您是手动安装tomcat还是已安装
  • 您可以在tomcat/bin/catalina.sh中设置tomcat必须使用的JAVA_主页
  • 您还可以在
    /etc/environment
    中进行设置。例如:

    JAVA_HOME=/usr/lib/jvm/JAVA-6-sun

      • 您是否在导出值的同一会话中启动tomcat
      • 您是手动安装tomcat还是已安装
      • 您可以在tomcat/bin/catalina.sh中设置tomcat必须使用的JAVA_主页
      • 您还可以在
        /etc/environment
        中进行设置。例如:

        JAVA_HOME=/usr/lib/jvm/JAVA-6-sun


      Ubuntu使用了一种有点有线的
      替代系统。/usr/bin中的程序指向/etc/alternations,然后再指向/usr/share/jdk

      有一个简单的方法:卸载OpenJDK和GCJ。但您可能会遇到依赖性问题

      或者阅读有关替代系统的信息

      man update-alternatives 
      
      应该有帮助。没那么难。有点复杂-仅此而已

      我应该补充一点,替代系统的好处是,您可以并行安装多个java(1.5、1.6、1.7 alpha、OpenJDK),并使用一个命令切换所有链接—到java、javac、appletviewer、javap等等。别忘了类路径。从1.6.23到1.6.24的更新由Ubuntu完美地处理。但是,将这些链接追溯到它们的根是很烦人的

      甚至还有一个Java快捷方式可供选择:

      update-java-alternatives --help
      

      Ubuntu使用了一个有点有线的
      替代系统。/usr/bin中的程序指向/etc/alternations,然后再指向/usr/share/jdk

      有一个简单的方法:卸载OpenJDK和GCJ。但您可能会遇到依赖性问题

      或者阅读有关替代系统的信息

      man update-alternatives 
      
      应该有帮助。没那么难。有点复杂-仅此而已

      我应该补充一点,替代系统的好处是,您可以并行安装多个java(1.5、1.6、1.7 alpha、OpenJDK),并使用一个命令切换所有链接—到java、javac、appletviewer、javap等等。别忘了类路径。从1.6.23到1.6.24的更新由Ubuntu完美地处理。但是,将这些链接追溯到它们的根是很烦人的

      甚至还有一个Java快捷方式可供选择:

      update-java-alternatives --help
      

      Ubuntu10.04.2我是以root用户的身份运行的,所以我想用户只要从命令行启动就可以了。但是,当我看到您的答案时,我将这些值添加到/etc/environment中,并且一切正常。谢谢。Ubuntu10.04.2我是以root用户的身份运行的,所以我想用户只要从命令行启动就可以了。但是,当我看到您的答案时,我将这些值添加到/etc/environment中,并且一切正常。谢谢。后来我发现一行在我导出变量后重置了它。但在我发现之前,/etc/environment修复程序仍然有效。后来我发现一行在导出变量后正在重置它。但是/etc/environment修复程序在我发现之前仍然有效。我故意没有卸载OpenJDK,因为我希望有一个更简单的解决方案。我故意没有卸载OpenJDK,因为我希望有一个更简单的解决方案。