为什么会报“could not find java.dll”错

tdsoft 2003-07-13 04:10:26
编译通过,运行报错:
Registry key 'Software\JavaSoft\Java Runtime Envi
has value '1.1', but '1.4' is required.
Error: could not find java.dll
Error: could not find Java 2 Runtime Environment.

代码如下:
import java.net.*;
import java.io.*;
public class ServerDemo {
public static void main(String[] args) throws IOException {
String toClient; //写到客户端的信息
PrintWriter out = null; //创建文件写出器
BufferedReader in = null; //创建文件读入器
boolean runable = true; //与客户端通话的状态
//创建SeverSocket的服务接口
ServerSocket serverSocket = null;
try {
//使该接口应用端口1111
serverSocket = new ServerSocket(1111);
} catch (IOException e) {
System.err.println("不能创建1111端口");
System.exit(1);
}

//创建Socket的客户接口,当有客户端的程序访问该服务接口时激活该类
Socket clientSocket = null;
try {
//通过accept()方法使服务器与客户端的Socket接口建立联系
clientSocket = serverSocket.accept();
} catch (IOException e) {
System.err.println("访问端口失败");
System.exit(1);
}
//分别创建客户端的Socket接口的读入与写出器
out = new PrintWriter(clientSocket.getOutputStream(), true);
in = new BufferedReader(new InputStreamReader(
clientSocket.getInputStream()));
//通过键盘输入器建立另一个文件读入器
BufferedReader stdIn = new BufferedReader(new InputStreamReader(
System.in));

//当有客户端的程序进入时显示欢迎信息
toClient = "您好,欢迎您!";
out.println(toClient);
//建立显示客户端信息的线程
ReadClientThread readClientThread = new ReadClientThread(in);
readClientThread.start(); //启动线程
//进入与客户端对话程序
while (runable) {
//向客户端写出服务端的键入信息
toClient = stdIn.readLine();
out.println(toClient);
//如果服务端写入"Bye.",退出对话程序
if (toClient.equals("Bye.")) break;
runable = readClientThread.runable; //获取线程的运行状态
}

readClientThread.fromClient = "欢迎下次再来.";
readClientThread.runable = false;//关闭线程
out.close(); //关闭文件写出器
in.close(); //关闭文件读入器
stdIn.close(); //关闭文件读入器
clientSocket.close(); //关闭客户端接口
serverSocket.close(); //关闭服务端接口
}
}

class ReadClientThread extends Thread {
BufferedReader in = null;
String fromClient = "";
boolean runable = true;
public ReadClientThread(BufferedReader in) {
this.in = in;
}
public void run() {
while(runable){
//显示客户端的信息
try{fromClient = in.readLine();}catch(Exception e){runable = false;}
//当客户端输入Bye.时,服务端结束显示客户端信息与向客户端写入信息的两个循环
if(fromClient.equals("Bye.")) {
System.out.print("客户端程序退出");
runable = false; //结束向客户写入信息循环
break; //结束显示客户端信息循环
}
System.out.println("客户端:" + fromClient);
}
}
}
...全文
4536 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
tdsoft 2003-07-13
  • 打赏
  • 举报
回复
ok,谢了老大
season11 2003-07-13
  • 打赏
  • 举报
回复
你到注册表里面去找一下'Software\JavaSoft\Java Runtime Envi"如果没有猜错现在他的值是1.1,改为1.4就OK!
tdsoft 2003-07-13
  • 打赏
  • 举报
回复
up
tdsoft 2003-07-13
  • 打赏
  • 举报
回复
up
tdsoft 2003-07-13
  • 打赏
  • 举报
回复
我用的是j2sdk1.4.1

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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