jboss编译jsp或者servlet是否需要运行jdk的javac?我机器上只有jre启动jboss没问题,奇怪的是含有java程序的jsp,可以正常编译,在work目录下生成XX_jsp.java和XX_jsp.class??????????

jinlongjolin 2007-10-12 01:05:26
加精
jboss编译jsp或者servlet是否需要运行jdk的javac?我机器上只有jre启动jboss没问题,奇怪的是含有java程序的jsp,可以正常编译,在work目录下生成XX_jsp.java和XX_jsp.class??????????
...全文
2158 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
chenciitc 2008-05-09
  • 打赏
  • 举报
回复
高薪招聘高校计算机专业兼职教师
北京思源培训中心(http://www.ciitc.com)专业做软件开发技术的培训;由于课程培训需要,长年高薪诚聘兼职讲师,欢迎计算机及相关专业的高校老师、研究生、博士生应聘
基本要求如下:
l 本科以上学历,计算机或相关专业毕业。
2 具有实际相关工作经验,从事过软件开发或系统管理工作。
3 语言表达清楚、流畅、逻辑思维清晰,英语听说良好。
4 诲人不倦,有高度的责任感、敬业精神和团队意识。
5 注重仪表,具有随机应变的能力。
6 具有一定的教学经验,从事过教学/培训业务者优先考虑。

精通应聘职位的某一部分课程内容,如下述编程语言或系统的一种或几种:
1. 编程语言:C++, VC++,VB.NET,C#, PowerBuilder, Delphi, Java,
Matlab , C++Builder
2. 数据库系统:SQL Server2000, SQL Server2005, Oracle,DB2,MySql
3. 网站编程:Marcomedia, HTML, Altova XML Suite,ASP, JSP, J2EE, J2SE,
PHP,ASP.NET,VB.NET, ColdFusion,ajax
4. 操作系统:Unix, Linux,Linux环境下嵌入式开发技术,Sun Solaris,IBM AIX
5. 办公软件:OFFICE(EXCEL、WORD、POWERPOINT)
6. 多媒体制作:Authorware7.0 , Director MX 2004
7. 图形动画类:Photoshop, Illustrator, CorelDRAW, FreeHand,
Flash ActionScript高级编程,3DMAX,AutoCAD2007 ,Maya
具有下述任何一种或几种国际IT认证证书者优先考虑:
1. 微软认证证书MCP / MCSA / MCSE / MCDBA / MCSD
2. SUN Java认证证书
3. Oracle认证证书
4. Macromedia认证证书
5. Linux认证证书
6. CIW (Certified Internet Webmaster) Associate/Professional/Master认证证书

有意者请把简历发到如下地址:abc@ciitc.com QQ:174629429 MSN:bjcosun@hotmail.com
http://www.ciitc.com
meiZiNick 2008-05-01
  • 打赏
  • 举报
回复
支持搂主,收藏
knowledge_Is_Life 2008-04-30
  • 打赏
  • 举报
回复
有问题请先GOOGLE,BAIDU
xiarunsheng 2008-03-30
  • 打赏
  • 举报
回复
有所收获,thanks
kgn28 2008-03-21
  • 打赏
  • 举报
回复
很显然呀,jsp是动态编译的,就是在web调
用是编译成servlet的,所以肯定是要编译
的,就是说要javac。
galaxyshen 2008-03-19
  • 打赏
  • 举报
回复
学习
fys249931556 2008-03-14
  • 打赏
  • 举报
回复
tomcat可以离开JDK。。但是离不开JRE
javaokay 2007-10-31
  • 打赏
  • 举报
回复
长知识了,难怪前两天看同学机器上没jdk就个jre,但是在Eclipse里可以运行java文件,而Tomcat要指定jdk目录是我就奇怪的很,原来是这个org.eclipse.jdt.internal.compiler.batch.Main.main东东,我 说怎么他的机器是没javac却 可以把 .java文件编译成.class文件设,是这家伙的功劳啊,但是 Tomcat还是离不开jdk吧
Tomcat为什么不也用这个org.eclipse.jdt.internal.compiler.batch.Main.main呢???
zjf405 2007-10-30
  • 打赏
  • 举报
回复
学习
kobygao 2007-10-24
  • 打赏
  • 举报
回复
不错,长见识了.
xiyuan1999 2007-10-23
  • 打赏
  • 举报
回复
不用
YuLimin 2007-10-16
  • 打赏
  • 举报
回复
好贴:)呵呵。
JBossWeek 2007-10-15
  • 打赏
  • 举报
回复
缺省情况下,JBoss中jsp的编译过程如下:
1、org.apache.jasper.compiler.Compiler负责从jsp生成java文件
2、org.apache.jasper.compiler.JDTCompiler负责编译java生成class文件
worm_oz提供的资料不错,抽个时间好好看看。

worm_oz 2007-10-15
  • 打赏
  • 举报
回复
上面的文章有中文版
http://www.ibm.com/developerworks/cn/websphere/techjournal/0702_col_johnson/0702_col_johnson.html
worm_oz 2007-10-15
  • 打赏
  • 举报
回复
确实可以不用JDK的javac来编译,参考
http://www.ibm.com/developerworks/websphere/techjournal/0702_col_johnson/0702_col_johnson.html

对JSP的原理有详细介绍,其中The translation phase有如下说明
3. Java source code compilation

The JSP container compiles the .java file it has generated. Java compilation creates a binary class -- the JSP page implementation class -- which resides on disk as a .class file.* If there are Java compilation errors, then error messages are generated that identify the error, the JSP line number, and the equivalent .java source file line number where the error took place.

WebSphere Application Server, like most JSP containers, supports the Eclipse Java Development Tools (JDT) compiler, as well as the JDK's javac. WebSphere Application Server started supporting the JDT compiler with Version 6.1. The JDT compiler is the default Java compiler for the JSP container because it operates very efficiently in an Open Services Gateway Initiative (OSGi) environment.

也就是说只需要JDT compiler就能将.java编译成class文件了。
worm_oz 2007-10-15
  • 打赏
  • 举报
回复
这段代码是用com.sun.tools.javac.Main来编译一个Java文件,需要JDK的tools.jar
com.sun.tools.javac.Main javac = new com.sun.tools.javac.Main();
javac.compile(new String[] {"-classpath", "rt.jar", "A.java"});

这段代码是用org.eclipse.jdt.internal.compiler.batch.Main编译同样的Java文件,需要jdtcore.jar或JBoss的jasper-jdt.jar,不需要JDK
org.eclipse.jdt.internal.compiler.batch.Main.main(new String[] {"-classpath", "rt.jar", "A.java"});
xiangbo520 2007-10-14
  • 打赏
  • 举报
回复
jboss中的TOMCAT内置了一个Eclipse JDT编译器,它可以在不需要JDK,只要有JRE就可以编译JSP,但servlet就不行了。
yilinhust 2007-10-14
  • 打赏
  • 举报
回复
LZ没装JDK?那还算Java程序员吗???
atomic_age 2007-10-14
  • 打赏
  • 举报
回复
JSP的编译过程是称将JSP编译成java代码。由jsp生成的java源代码和servlet的代码差不多,其实就是servlet。这和应用服务器无关,是由jsp编译器编译的,jsp编译器一般是由java代码写成,如果是tomcat,这个编译器在jasper.jar中。这一步是不需要javac的。但到了第二步,也就是要将jsp编译所生成的java源代码再编译成*.class文件。这就必须要javac了。因为只有javac可以将*.java编译成*.class。至于机器上没有javac。有可能是其他的目录中有或是系统直接调用的java编译的库(javac只是个壳,具体的功能全在dll中(如果是linux/unix就在*.so中))。

如以编译jsp(jsp代码->java源代码)不需要javac,但要运行jsp(首先要java源代码->java的class文件),就必须要有*.class文件,因此,必须要使用java编译器,javac。 再查一下吧,硬盘上应该有类似的东西
worm_oz 2007-10-14
  • 打赏
  • 举报
回复
果然如此,可以参考相关的JavaDoc:

http://tomcat.apache.org/tomcat-5.5-doc/jasper/docs/api/org/apache/jasper/compiler/Compiler.html

http://tomcat.apache.org/tomcat-5.5-doc/jasper/docs/api/org/apache/jasper/compiler/JDTCompiler.html

另外看JDTCompiler.java的源代码,可以发现是用org.eclipse.jdt.internal.compiler包来编译的
http://www.docjar.com/html/api/org/apache/jasper/compiler/JDTCompiler.java.html

感谢LS提供线索,又学到新知识了
加载更多回复(7)
一、JDKJava Development Kit) JDK是整个Java的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具和Java基础的类库(rt。jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。最主流的JDK是Sun公司发布的JDK,除了Sun之外,还有很多公司和组织都开发了自己的JDK,例如IBM公司开发的JDK,BEA公司的Jrocket,还有GNU组织开发的JDK等等。其中IBM的JDK包含的JVM(Java Virtual Machine)运行效率要比Sun JDK包含的JVM高出许多。而专门运行在x86平台的Jrocket在服务端运行效率也要比Sun JDK好很多。但不管怎么说,我们还是需要先把Sun JDK掌握好。 1、JDK的下载和安装 JDK又叫做J2SE(Java2 SDK Standard Edition),可以从Sun的Java网站上下载到,/j2se/downloads。html ,JDK当前最新的版本是J2SDK1。4。2,建议下载该版本的JDK,下载页面在这里:/j2se/1。4。2/download。html。 下载好的JDK是一个可执行安装程序,默认安装完毕后会在C:“Program Files“Java目录下安装一套JRE(供浏览器来使用),在C:“j2sdk1。4。2下安装一套JDK(也包括一套JRE)。然后我们需要在环境变量PATH的最前面增加Java的路径C:“j2sdk1。4。2“bin。这样JDK就安装好了。 2、JDK的命令工具 JDK的最重要命令行工具: Java启动JVM执行class javacJava编译器 jar: Java打包工具 javadoc: Java文档生成器 这些命令行必须要非常非常熟悉,对于每个参数都要很精通才行。对于这些命令的学习,JDK Documentation上有详细的文档。 二、JDK Documentation Documentation在JDK的下载页面也有下载连接,建议同时下载Documentation。Documentation是最最重要的编程手册,涵盖了整个Java所有方面的内容的描述。可以这样说,学习Java编程,大部分时间都是花在看这个Documentation上面的。我是随身携带的,写Java代码的时候,随时查看,须臾不离手。 三、应用服务器(App Server) App Server是运行Java企业组件的平台,构成了应用软件的主要运行环境。当前主流的App Server是BEA公司的Weblogic Server和IBM公司的Websphere以及免费的Jboss,选择其中一个进行学习就可以了,个人推荐Weblogic,因为它的体系结构更加干净,开发和部署更加方便,是Java企业软件开发人员首选的开发平台。下面简要介绍几种常用的App Server: 1、Tomcat Tomcat严格意义上并不是一个真正的App Server,它只是一个可以支持运行Serlvet/JSP的Web容器,不过Tomcat也扩展了一些App Server的功能,如JNDI,数据库连接池,用户事务处理等等。Tomcat被非常广泛的应用在中小规模的Java Web应用中,因此本文做一点下载、安装和配置Tomcat的介绍: Tomcat是Apache组织下Jakarta项目下的一个子项目,它的主网站是:/index。JSP,Weblogic的在线文档:/ 。 3、IBM Webshpere Websphere同样可以下载到免费的试用版本,到IBM的developerWorks网站可以看到Websphere试用产品的下载和相关的Websphere的资料,developerWorks中文网站的连接是:http:///developerWorks/cn/wsdd/ ,Websphere的下载连接:http:///wsdd/downloads/WASsupport。html 。 4、Jboss Jboss是免费开源的App Server,可以免费的从Jboss网站下载:http:///idea。html 四、Java应用的运行环境 Java的应用可以简单分为以下几个方面: 1、Java的桌面应用 桌面应用一般仅仅需要JRE的支持就足够了。 2、Java Web应用 Java的Web应用至少需要安装JDK和一个web容器(例如Tomcat),以及一个多用户数据库,Web应用至少分为三层: Browser层:浏览器显示用户页面 Web层:运行Servlet/JSP DB层:后端数据库,向Java程序提供数据访问服务 3、Java企业级应用 企业级应用比较复杂,可以扩展到n层,最简单情况会分为4层: Browser层:浏览器显示用户页面 Client层:Java客户端图形程序(或者嵌入式设备的程序)直接和Web层或者EJB层交互 Web层:运行Servlet/JSP EJB层:运行EJB,完成业务逻辑运算 DB层:后端数据库,向Java程序提供数据访问服务 4、Java嵌入式应用 Java嵌入式应用是一个方兴未艾的领域,从事嵌入式开发,需要从Sun下载J2ME开发包,J2ME包含了嵌入式设备专用虚拟机KVM,和普通的JDK中包含的JVM有所不同。另外还需要到特定的嵌入式厂商那里下载模拟器。
TR069 Openacs服务器搭建 目录 一、安装JDK 3 二、安装MySQL数据库及驱动 5 三、JBOSS服务器 13 四、在ANT下编译ACS源码 16 五、在JBOSS中部署编译后的openacs项目 19 六、OPENACS操作简要手册 22 1 、CPE的设置 22 2 、Openacs的基本设置 22 3、openacs脚本的使用(注意更改IP) 24 一、安装JDK 并且设置好环境变量 这里必须设置的有两个环境变量: 1. JAVA_HOME: C:\Program Files\Java\jdk1.6.0_25 (JDK的安装目录) 2. Path:C:\Program Files\Java\jdk1.6.0_25\bin (设置了Path,才能使用javajavac) 设置完两个环境变量,在cmd中用Javajavac两个命令检查是否有效 说明: JAVA_HOME 指明JDK安装路径,就是刚才安装时所选择的路径(假设安装在D:\jdk1.4),此路径下 包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,Eclipse等都需 要依靠此变量)。 Path 使得系统可以在任何路径下识别java命令,设为: %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin CLASSPATH 为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设为:.;%JAVA_HOME%\lib;%JA VA_HOME%\lib\tools.jar (要加.表示当前路径) 二、安装MySQL数据库及驱动 MySQL数据库安装前必须有.NAT framework的支持,安装.NAT framework4.0之前需要装一个WIC(如果安装需要会有提示,电脑上已安装可跳过) 安装了WIC再安装.NET framework4.0(一共需要有framework 2.0和4.0两个,先装2.0版本再装4.0,如果只有4.0,用framework clean up工具清理后再装) 安装完成后就可以安装MySQL了! 选择custom安装到指定路径 下面会进入设置向导 这里是设置管理员密码,用户名是root,密码也设置为root (这里的用户名密码对应后文的openacs-ds.xml中的参数设置) 到目前为止,JDK和MYSQL数据库都装好了。 现在数据库装好了,需要将MySQL的JDBC驱动拷贝到JBOSS服务器的相应目录下,使得JB OSS可以在部署的项目中连接数据库: 将mysql-connector-java-5.1.18-bin.jar复制到C:\ Program File\jboss- 4.2.2.GA\server\default\lib目录下。 数据库用户设置 创建数据库时默认的为root用户,拥有最高权限,可以直接使用root用户,也可以新建 ,新建参考如下: 进入数据库,创建数据库ACS,并修改访问权限,如下所示: CREATE DATABASE ACS; //新建名为ACS的数据库 Use ACS; GRANT ALL ON ACS.* TO openacs IDENTIFIED BY 'openacs'; //红色部分依次表示:ACS数据库的所有表、用户名、用户密码,对一个用户对相应表的 权限,ALL表示所有权限。 例: // mysql> grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令'; mysql>grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by '123 ; 至此数据库和驱动安装完成。 三、JBOSS服务器 说明:JBOSS服务器可以直接解压即可(当前放在C盘Program File目录,最好放在此目录,其他目录需要修改ACS下的多个配置文件) ************//如果不放在C盘,编译时会出现如下错误:************************* * **************************************************************************** *** 1、首先设置JBOSS环境变量:新建JBOSS_HOME,值为jboss顶层目录 2、JBOSS_HOME设置完成后,需要将%JBOSS_HOME%\bin;添加的PATH中; JBOSS服务器开启: 在目录JBOSS目录 下新增StartJBoss.bat 运行StartJ

6,787

社区成员

发帖
与我相关
我的任务
社区描述
JBoss技术交流
社区管理员
  • JBoss技术交流社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧