2014-01-20 3 views
0

Я пробовал пример, предоставленный Oracle, но когда я запускаю программу (через Windows 7 CMD), я получаю следующую ошибку: «Не знаю о хосте», + HostNameКлиент/Socket в java - ошибка на стороне клиента

код выглядит следующим образом (точно так же, как и предоставленной Oracle):

KnockKnockClient http://docs.oracle.com/javase/tutorial/networking/sockets/examples/KnockKnockClient.java

KnockKnockServer http://docs.oracle.com/javase/tutorial/networking/sockets/examples/KnockKnockServer.java

KnockKnockProtocol не имеет большого значения, но он также присутствует.

Я не знаю, почему я получаю за исключением каждый раз, когда ...

И запустить программу в соответствии с теми же ссылками, как указано выше.

С уважением

+0

Выполняете ли вы два процесса на одном и том же хосте (т. Е. Используете localhost) hostName? – andersschuller

+0

как вы запускаете приложения?какие параметры? – molokoV

+0

Да, если хост, вы имеете в виду от того же компьютера. У меня есть два разных cmd-окна, из которых я запускаю клиент в одном, а сервер в другом. я запустить программу, как это: Java KnockKnockServer 4444 Java KnockKnockClient test.example.com 4444 – user2990057

ответ

0

Конечно, вы запускаете приложение без каких-либо параметров, приведенных.

Параметры программа рассчитывает:
Сервер:

Usage: java KnockKnockServer <port number> 

Клиент:

Usage: java EchoClient <host name> <port number> 

Пример для параметров возможных:
Сервер:
Запуск от CommandLine:

java KnockKnockServer 55555 

Запуск из IDE:

55555 

Клиент:
Запуск от CommandLine:

java EchoClient localhost 55555 

Запуск из IDE:

localhost 55555 

Редактировать, а также решение для начинающих.

Изменение:

Change String hostName = args[0]; 
int portNumber = Integer.parseInt(args[1]); 

To:

String hostName = "localhost"; 
int portNumber = 55555; 

В классе клиента вам просто нужно изменить portNumber, потому что это единственный показ (в целях).

+0

Нет, я нет. Я пишу и номер порта, и имя хоста на стороне клиента, и номер порта на стороне сервера ... – user2990057

+0

@ user2990057, Какую IDE вы используете? Eclipse .. IntelliJ .. NetBeans? –

+0

Я использую Eclipse, но я запускаю программу из окна терминала, которое предлагает Windows 7. Я даже не знаю, как запустить его из Eclipse ... – user2990057

Смежные вопросы