Java程序只要jre就可以运行了吧,比如我运行 MyEclipse 6.0 就不需要jdk嘛,为什么运行tomcat时,它会出错说 需要jdk啊?
俺刚学java,请各位大侠多多指教啊!

解决方案 »

  1.   

    版权所有,欢迎转载,转载请注明转自http://www.suneca.comTomcat 5.5及以前的版本,我们都必须安装JDK,因为Tomcat Jasper需要使用JDK去编译jsp(翻译后的java文件),Tomcat 6的jasper在新的版本已经做了重新的设计,以下是tomcat 6官方文档的一句话:
    程序代码 程序代码
    Tomcat 6.0 uses the Eclipse JDT Java compiler for compiling JSP pages.  This means you no longer need to have the complete Java Development Kit (JDK) to run Tomcat, but a Java Runtime Environment (JRE) is sufficient.  The Eclipse JDT Java compiler is bundled with the binary Tomcat distributions.  Tomcat can also be configured to use the compiler from the JDK to compile JSPs, or any other Java compiler supported
    by Apache Ant.
    也就是说,以后在生产机上安装tomcat的时候,不再需要去安装一个JDK了,只需要安装一个JRE就可以!原来的tomcat 5.0跟tomcat 5.5都需要JDK的支持!版权所有,欢迎转载,转载请标明转自http://www.suneca.com
      

  2.   

    因为jsp转换成servlet后需要编译,所以需要jdk
    Tomcat 6.0以后已经不需要jdk了
      

  3.   

    我用MyEclipse 6.0 建立一个 java project,输出hello world,可以编译运行啊,
    MyEclipse也没提示我让我安装 jdk啊,
    为什么Tomcat不一样啊?
      

  4.   


    MyEclipse 6.0 的jdk在哪个目录啊?要添加 JAVA_HOME 才能运行tomcat,这个JAVA_HOME 该如何设置啊?
    这是我的MyEclipse 6.0 安装目录,
     C:\Java\MyEclipse6.0.1 的目录2010-08-05  02:09    <DIR>          .
    2010-08-05  02:09    <DIR>          ..
    2010-08-02  14:54    <DIR>          dbexplorer
    2010-08-05  02:06    <DIR>          eclipse
    2010-08-02  14:54    <DIR>          htmldesigner
    2010-08-02  14:54    <DIR>          imageeditor
    2010-08-02  14:46    <DIR>          jre
    2010-08-05  02:09                 0 llp.txt
    2010-08-02  14:54    <DIR>          myeclipse
    2010-08-02  14:47             1,650 MyEclipse 6.0.1.lnk
    2010-08-02  14:55    <DIR>          MyEclipse-UninstallerData
    2010-08-02  14:55         1,791,189 MyEclipse_6.0.1_InstallLog.log
    2010-08-02  14:54    <DIR>          texteditor
    2010-08-02  14:54    <DIR>          xmleditor我设置JAVA_HOME 为C:\Java\MyEclipse6.0.1\jre\bin好像不行啊。
    tomcat提示错误
      

  5.   

     因为tomcat是告jdk运行的嘛。
      

  6.   


    那为什么 MyEclipse 6.0不说缺 jdk啊?
      

  7.   

    MyEclipse查看你的JDK路径,有种方法,如图:
    如果没有,运行一个简单的hello world程序
      

  8.   

    如果MyEclipse 6.0自带 jdk的话,
    那我怎样让tomcat找到  “MyEclipse 6.0自带 jdk”呢?JAVA_HOME怎么设置呢?
      

  9.   

    MyEclipse中自带了jre的,在window->preferences->java->installed jres里面可以修改MyEclipse所用的jre
      

  10.   

    Tomcat 就是用 Java 编写的一个应用程序,也是靠着 main 方法启动的,本质上来说与 HelloWorld 程序没有任何区别,因此它也是需要 JDK 的。
      

  11.   

    没规定一定要用自带的,总不能安装好MyEclipse不能跑程序吧,因此自带一个jdk也没什么的你可以自己指定MyEclipse的jdk路径
      

  12.   

    为什么我感觉MyEclipse自带的jdk不好用
      

  13.   

    MyEclipse自带的是jre吧
    好像没自带jdk吧?但tomcat需要的是jdk啊!
    我把JAVA_HOME 设成 C:\Java\MyEclipse6.0.1\jre\bin 不行啊,C:\Java\apache-tomcat-6.0.29\bin>startup
    The JAVA_HOME environment variable is not defined correctly
    This environment variable is needed to run this program
    NB: JAVA_HOME should point to a JDK not a JRE
      

  14.   

    我已经下载了MyEclipse6.0 AllInOne,
    又下载了apache-tomcat-6.0.29,
    必须再下载jdk吗?tomcat为什么必须要jdk,jre不行吗?
    jdk和jre的区别是什么呢?我写了个hello world ,好像只要jre(路径C:\Java\MyEclipse6.0.1\jre\lib)就行了,
    没说要jdk啊。
      

  15.   

    因为 Tomcat 需要编译 Jasper 转换 JSP 后的 Servlet
      

  16.   

       的确是这样的  LZ可以打开startup.bat 再看catalina.bat 你就可以看到他会有个MAINCLASS 就是一个java文件
      

  17.   

     myeclipse 有默认的jdk的
      
      

  18.   

    因此它也是需要 jre 的。
    因此它也是需要 jdk 的。因此7.0又只需要jre了
      

  19.   

    别人是问 为什么要安装JDK
    不是问   为什么不要安装JDK
    你们看都不看清楚就一顿回答。。
      

  20.   

    我已经下载了MyEclipse6.0 AllInOne,
    又下载了apache-tomcat-6.0.29,
    必须再下载jdk吗?tomcat为什么必须要jdk,jre不行吗?
    jdk和jre的区别是什么呢?我写了个hello world ,好像只要jre(路径C:\Java\MyEclipse6.0.1\jre\lib)就行了,
    没说要jdk啊。tomcat为什么要求这么多呢?
      

  21.   

    我觉的既然tomcat是java程序,按道理说只需要 jre就够了,但他还要jdk,太邪恶了!!! 
      
      

  22.   

    myeclipse 为什么要用jdk ??因为:  你写的代码首先是 。java 文件,需要 jdk的一些编译工具编译之后才能运行。   MyEclipse 还有 eclipse 如果要编译java程序 就必须有jdk,不管自带的还是 你自己重新配置的。而我们一般为了 统一 jdk版本,所以一般都会自己去配置java环境变量,然后把 myeclipse中的jre 配置成自己的系统对应的,这样方便以后系统的移植。
      

  23.   

    MyEclipse 6.0能运行,证明jre安装应该是正确的;我用MyEclipse 6.0写了一个hello world程序,也能运行,开发也没问题;我只是启动一下tomcat,还没开发 jsp页面呢,他怎么就要求jdk呢?
    等我开发jsp页面,他再要jdk才差不多吧?
      

  24.   

    因为java代码的翻译及编译过程需要jdk
      

  25.   

    楼主,不提还真没注意这个问题。
    一直以为Tomcat 只需要JRE。
      

  26.   

    设置系统环境变量 , java home  
      

  27.   

      首先jre是个运行环境,jdk是开发环境即开发工具包;显然,写Java程序就需要jdk了,因为要编译Java字节码文件等等而运行Java程序就得要用jre了..sun公司(当然现在已经不存在了)的jdk都会自带有jre,因此安装jdk就可以开发运行java程序,像你所说的MyEclipse只要安装jre就可以了,实际上是不可以的,因为jre不能够编译Java程序,但是,MyEclipse内嵌了Java编译器,因此也就只安装jre就可以了,,,而tomcat需要jdk,是因为单独的jre不能编译Java程序,而tomcat又没有内嵌的编译器,因此就必须得要安装jdk了.....
      

  28.   


     那该怎样设置 让 tomcat 也去使用  MyEclipse内嵌了Java编译器呢?
      

  29.   

      估计不行,只能自己再下载安装一个jdk....
      

  30.   


    楼上的大侠,我搜了一个我的硬盘,发现没有javac.exe但是MyEclipse 6.0 all in one 竟然可以成功编译我的 hello world的java程序,真是令人费解啊。
      

  31.   

    java编译器又不只javac着一个
    eclipse用自己的编译器
      

  32.   

       不知楼主的MyEclipse里为何找不到javac,但我的D:\myeclipse\jre\bin此目录下有javac.exe楼主精神可嘉,但对于工具不一定要掌握很深很深,知道会用也就差不多了,也许随着你不断地深入编写代码的学习,会对前面的一些知识理解更透彻,这需要时间的沉淀!!!一起努力!!!
      

  33.   

    最easy的方法,要不就装上JDK,要不就装TOMCAT 7.0。既然是入门学习,了解太深没什么必要,有时间研究这个你的站点demo都应该出来了,用多了自然就会去看下TOMCAT的说明文档了,自然也就能了解这些的了
      

  34.   

    MyEclipse 只是一个插件而已,MyEclipse 编译 Java 代码是采用其母体 Eclipse 中自带的 Java 编译器,编译之后的字节码符合规范。编译器在 eclipse 的 org.eclipse.jdt.core 包中。
      

  35.   

    Tomcat是纯JAVA编写的服务器 需要JDK运行环境 
      

  36.   

    MyEclipse 6.0 自带了jdk   而tomcat是在jdk的基础上才能运行的~~~~~
      

  37.   

    其实自从Tomcat 5.5开始,只需要JRE就可以运行了。
    没弄好的都是设置不对,大家也都没去认真看官方文档。
    实在不行还可以看tomcat源码。Tomcat 5.5/6.0的文档说:
    The installer will use the registry or the JAVA_HOME environment variable to determine the base path of a J2SE 5 JRE. (其实设JAVA_HOME只是为了寻找JRE,把JAVA_HOME设置为JRE目录的父目录就瞒天过海了)Set an environment variable named JRE_HOME to the pathname of the directory into which you installed the JRE 关键是设置 JRE_HOME 环境变量为JRE目录。
    或者把JAVA_HOME设置为JRE目录的父目录。(没有装jdk的情况下)
      

  38.   

    因为tomcat是用java语言开发的,运行时需要jre环境,myeclipse高版本中应该自带了jdk把tomcat设置,进去就可以运行了!