tomcat + jre 可以跑web项目吗?还是必须tomcat+jdk才可以? 我一直以为jre是运行环境,只要有jre就可以了
是不是因为项目里面开发的时候用了很多的JDK的API,所以必须是JDK,JRE并没有API,所以项目会报错,所以必须是JDK呢?...
是不是因为项目里面开发的时候 用了很多的JDK的API,所以必须是JDK,JRE并没有API,所以项目会报错,所以必须是JDK呢?
展开
展开全部
tomcat是APP容器,它会将JSP编译成CLASS文件,需要JDK的支持才可以,jre只支持已有的.class文件,不能对.java文件或者jsp文件进行编译,所以需要用jdk
追问
明白了,那如果我把 webapps 里面经过编译 发布的文件拷出的话,那应该用jre就可以运行了吧? 还有 ant 有编译的作用吗? 每次项目有修改(不需重启服务器)用ant进行部署之后修改后的效果就可以显示,这是一个什么样的过程呢?例如修改JSP,存在对JSP的编译吗?
追答
拷贝webapps中的内容应该可以运行。
另外关于ant:
仅仅只有jre无法使用ant进行编译,javac才能编译源码(.java)。到自己安装的jdk中看一下就懂了,只有在jdk/bin中才有javac这条命令。而jdk/jre/bin中只有支持执行.class文件所必须的java,java_vm等命令。
所以:
ant不是编译工具,他是一个脚本生成工具。它告诉jdk要怎样编译。
另外对于jsp的修改:
jsp修改应该是动态加载的。这个和jsp编译有关系。jsp中修改改变的是方法内的输出形式,而不是方法的类型。你试着去修改一个类(增加一个成员变量,或者添加一个方法,或者修改方法的参数个数,或类型,方法的返回类型)再用ant部署应该不会表现出变化的。tomcat应该不会加载类的变化。如果使用 了 reload = true的话,tomcat的做法是类似于自动重启。重新加载项目所有类。
展开全部
安装jdk 然后将项目发到tamocat 包apps下面 自动解压的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
tomcat6.0以上可以不再依赖JDK运行,直接使用JRE即可
但tomcat5.5以下,是必须安装JDK的。
补充:这主要是由于,tomcat5.5及以下版本主要是依赖JDK去编译JSP文件生成class的。但Tomcat6.0使用了Eclipse的JDT技术,因此不再依赖JDK运行。
但tomcat5.5以下,是必须安装JDK的。
补充:这主要是由于,tomcat5.5及以下版本主要是依赖JDK去编译JSP文件生成class的。但Tomcat6.0使用了Eclipse的JDT技术,因此不再依赖JDK运行。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一楼正解
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询