你要安装好jdk,设置好相应的环境变量,然后在命令行里面javac.
下面给出一个例子,你可以参考一下:
目前,建议初学者用j2sdk + Tomcat 5.0.19开始学习jsp.也是现在最新版本.
初学者一般和我当初一样,都不明白jdk,j2sdk,j2se,j2ee之间的区别,这里简单介绍一下:
jdk: java devolop kit -- java开发包(运行java最基本的东东)
j2sdk:在1.4版以前称为jdk,可以理解j2sdk是jdk的升级版本,所以我们只要安了j2sdk即可,JDK就没必要了,呵呵,装了升级版,还要装低级版否?
j2sdk呢有几个版本对应于java2的几个版本,其中j2ee需要用到开发工具就是J2eesdk了,只不过大部分应用服务器(weblogic jboss等)都内置了j2eesdk。
j2se: j2sdk也就是标准版,一般来说j2sdk指的就是j2se.
j2ee: 也称j2eesdk,用来进行企业级开发。
jre: 是java runtime envionment -- java运行环境,jdk中包括了它,但是对于不需要开发只是运行的用户是可以只单独安装jre的,所以sun提供了jre的下载。
能够理解上面的就概念就差不多啦,应该不是很难吧,如果现在还不能完全明白,不要紧,在跟我学过后面的几章后,你来回过头来看看,就很清楚了。
j2sdk下载地址:http://java.sun.com/j2se/1.4.2/download.html
tomcat5 下载地址:http://www.apache.org/dist/jakarta/
安装步骤:
1.安装完j2sdk以后,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的j2sdk安装在c:\j2sdk1.4.2):
JAVA_HOME=c:\j2sdk1.4.2;
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(.;不能少,表示当前路径)
path= %JAVA_HOME%\bin; (系统里已经有了path变量,只需要在path最前面加上去即可)
然后可以写一个简单的java程序来测试J2SDK是否已安装成功:
public class Myjava{
public static void main(String args[]){
System.out.println("试试看,装好了吗?.");
}
}
将上面的这段程序保存为文件名为Myjava.java的文件。
然后打开命令提示符窗口,cd到你的Myjava.java所在目录,然后键入下面的命令
javac Myjava.java
java Myjava
此时如果看到结果的话表示安装成功,出错则仔细检查一下你的配置情况。
2.安装Tomcat后,在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的tomcat安装在c:\tomcat5):
CATALINA_HOME=c:\tomcat5;
CATALINA_BASE=c:\tomcat5;
然后修改环境变量中的classpath,把tomat安装目录下的common\lib下的servlet-api.jar(此文件在tomcat5以前名为:servlet.jar)追加到classpath中去,修改后的classpath如下:
classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\common\lib\servlet-api.jar; (最好再拷贝到:C:\j2sdk1.4.2\jre\lib\ext目录下)
接着可以启动tomcat,在IE中访问http://localhost:8080,如果看到tomcat的欢迎页面的话说明安装成功了。
第三步:建立自己的jsp app目录
1.到Tomcat的安装目录的webapps目录,可以看到ROOT,examples等Tomcat自带的的目录;
2.在webapps目录下新建一个目录,起名叫myapp;
3.myapp下新建一个目录WEB-INF,注意,目录名称是区分大小写的;
4.WEB-INF下新建一个文件web.xml,内容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>My Web Application</display-name>
<description>
A application for test.
</description>
</web-app>
5.在myapp下新建一个测试的jsp页面,文件名为index.jsp,文件内容如下:
<html>
<head><title>大家好</title>
</head>
<body>
<% out.println(" 大家好,我的第一个jsp程序"); %>
</body>
</html>
6.重启Tomcat
7.打开浏览器,输入http://localhost:8080/myapp/index.jsp 即可.
‘贰’ java在线编译器的介绍
Java 在线编译器是一种在线编译环境,它和传统编译环境最大的区别在于前者不需要复杂的客户端及复杂的库。Java在线编译器完全摆脱了传统的束缚,将所有的库和应用集成到云端的Web Server上面,实现了云计算。这对于很多Java初学者来说,Java在线编译器解决了很多问题。
‘叁’ java在线编译器实现
try{
Thread.sleep(1000);
}catch(InterruptedException e){
//扑捉发生在线程中的异常,当一个正在执行的线程被中断时就会出现这个异常,添加catch后当程序被双击停止时不会出现错误
e.printStackTrace();
}
lbClock.setText(getDate());
}
‘肆’ 如何用java调用c语言编译器实现在线编译c语
要在java中调用c语言的库,需要使用Java提供了JNI。
举例说明
在c语言中定义一个 void sayHello()函数(打印Hello World);然后在Java中调用这个函数显示Hello Word.
现在分别从Java和C语言两部分说明:
1. Java 部分
首先定义一个HelloNative,在其中申明sayHello函数,函数要申明为Native 类型的.如下:
public class HelloNative {
public native void sayHello();
}
编译这个类,生成class文件:
javac HelloWorld.java
利用javah生成需要的h文件
javah HelloNative
生成的 h文件大概如下:
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class HelloNative */
#ifndef _Included_HelloNative
#define _Included_HelloNative
#ifdef __cplusplus
extern "C" {
#endif
/*
* Class: HelloNative
* Method: sayHello
* Signature: ()V
*/
JNIEXPORT void JNICALL Java_HelloNative_sayHello
(JNIEnv *, jobject);
#ifdef __cplusplus
}
#endif
#endif
可以看一下上面自动生成的程序,程序include了jni.h,这个头文件在 $JAVA_HOME下的include文件夹下. 还可以发现生成的函数名是在之前的函数名前面加上了Java_HelloNative。
2. C语言部分
根据上面生成的h文件编写相应的代码实现,建立一个 HelloNative.cpp用来实现显示Hello World的函数.如下:
#include <stdio.h>
#include "HelloNative.h"
JNIEXPORT void JNICALL Java_HelloNative_sayHello(JNIEnv *, jobject)
{
printf("Hello World!\n");
}
代码编写完成之后,我们再用gcc编译成库文件,命令如下;
gcc -fPIC -I/usr/lib/jvm/java-7-openjdk-i386/include -I/usr/lib/jvm/java-7-openjdk-i386/include/linux -shared -o libHelloNative.so HelloNative.cpp
这样就会在当前目录下生成一个libHelloNative.so的库文件.这时需要的库已经生成,在C语言下的工作已经完成了.
接下来需要在Java中编写一个程序测试一下.在程序前,需要将我们的库载入进去.载入的方法是调用Java的 System.loadLibrary("HelloNative");
public class TestNative
{
static {
try {
System.loadLibrary("HelloNative");
}
catch(UnsatisfiedLinkError e) {
System.out.println( "Cannot load hello library:\n " + e.toString() );
}
}
public static void main(String[] args) {
HelloNative test = new HelloNative();
test.sayHello();
}
}
但是再编译后,运行的时候,问题又出现了.
Cannot load hello library:
java.lang.UnsatisfiedLinkError: no HelloNative in java.library.path
Exception in thread "main" java.lang.UnsatisfiedLinkError: HelloNative.sayHello()V
at HelloNative.sayHello(Native Method)
at TestNative.main(TestNative.java:13)
载入库失败,但是库明明就是放在当前文件夹下的,怎么会载入失败呢?
用System.getProperty("java.library.path")查看,发现java.library.path中并不u存在当前的目录.主要有以下的几个解决办法:
1) 将生成的库复制到java.library.path有的路径中去,当然这样不是很好
2) 设置环境变量export LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH ,将当前的目录加入到LD_LIBRARY_PATH中
3) 设置java 的选项,将当前的目录加入到其中 .java -Djava.library.path=. $LD_LIBRARY_PATH
这样之后程序就能够成功的运行了.可以看见显示的"Hello World!"了
‘伍’ java如何实现c语言的在线编译
写JSP、保存页面的C到文件,使用JAVA写一个指处理,再用过Runtime.exec调用并抓取输出的返回,最后将结果返回给页面。
‘陆’ 如何编译java
用命令提示符编译java程序的步骤:
1.先新建文本文档,输入自己的java程序。
这里我写一个简单的java程序,来做示范。
import java.util.*;
public class HelloDate{
public static void main(String[] args)
{
System.out.println("Hello,it's:");
System.out.println(new Date());
}
}
经验总结:运行一个java程序的大概的流程是:
书写源代码------>编译------->运行---->结束。
注意事项:
1.在输入的时候一定要注意区分大小写。
2.操作之前要保证自己的电脑配置了java的运行环境。
‘柒’ 刚学习java,但是从网上找到的java编程题为什么不能用行
你好!java是一种实用性很强的计算机编程语言,它可以开发出许多人们喜欢的小程序,由于它的用途广泛从而深受人们的追捧。很多人都在学习java,有的是在专门的学校里学习,而更多的人选择了网络教学视频里学习。要想学好java语言,一定要有耐心,恒心和学习的乐趣。否则很难学好。现实网络有很多的java编程题,可以帮助你更好的去体验java的实用功能,也可以帮你更快更好的掌握好java的学习要领,从而强化对java的理解。但并不是说随便从网络上找个编程题就能学习至用的,要想真正学好java,就得下载java软件,安装这套软软的运行程序,只有在专门的指导下才可以用
‘捌’ 怎么编译运行JAVA程序
先安装JDK,然后配置环境变量!
我的电脑(右击)→属性→高级→环境变量
在系统变量中找到PATH,然后把JDK的安装路径写上去,假如你的路径是C:\Sun\jdk
那么你就在PATH中添加下面的路径:
C:\Sun\jdk\bin;
(注:后面的分号不能少)
然后在系统变量中找到CLASSPATH如果没有就自己新建一个!
把下面这个路径写进CLASSPATH里去:
.;C:\Sun\jdk\lib\dt.jar;C:\Sun\jdk\lib\tools.jar;
测试的时候在C盘根目录下建一个HelloWorld.java的文件,然后在CMD中,在C盘的根目录下输入
javac HelloWorld.java
如果程序没错的话,再输入
java HelloWorld
这样就会输出结果了!
‘玖’ java在线编译网站或工具有哪些
你做了很多了吧!很好,继续学吧! class.forName():加载的是指定的一个类 .class文件是由JAVA虚拟机加载,解释执行的 阁下 可能把 方向搞错了。 JAVA的反射机制很强大,基本上所有的涉及到配置文件的,都有反射的影子。尤其是JAVA编程中的框架SSH,ibates等等。 这些框架因为使用了反射机制,在普通程序员眼里,就只有类和配置。这样系统很容易扩展和维护。 反射机制 也不要研究得太深,对于中国这个JAVA软件行业,还是应用维多,你应该不会想自己开发一个框架吧。