С Новым годом! Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 09.08.2013
Сообщений: 8
1

Компиляция в командной строке класса, реализующего интрефейс

11.08.2013, 15:16. Показов 2917. Ответов 13
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Уважаемые форумчане, проблема детская, но тем не менее потратил на нее больше суток.
Есть интерфейс AccountService. Его реализует класс AccountServiceImpl. Скопмилировать интерфейс получается, а скомпилировать класс никак. Компилятор выдает ошибки в местах упоминания интерфейса, пишет что "cannot find symbol". Как указать компилятору на интерфейс? нужно ли указывать на java файл или же на скомпилированный файл? Статью ********* ликбез читал. С параметром -classpath как только не извращался -результат тот же. Скриншот и код прилагаются. Класс и интерфейс в одном пакете. Иерархия папок следующая: Project>Server>src>accountService(это пакет).
Подскажите в чем я нуб и куда копать?
Миниатюры
Компиляция в командной строке класса, реализующего интрефейс  
Вложения
Тип файла: rar accountServiceProg.rar (821 байт, 6 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.08.2013, 15:16
Ответы с готовыми решениями:

Компиляция в командной строке
Всем привет!!! Ребят не могу откомпилить файлик. Имеется 2 файлика директория котрых: ...

Компиляция в командной строке
Файл First.java package packone; class Class { public static void print () { ...

Компиляция в командной строке.
Ребят задание скомпилировать код в командной строке vc++ и запустить программу.Делаю так: ...

Компиляция в командной строке
Всем привет! Ребят, тут вопрос такой. У меня имеется папка допустим называется "Project", в ней...

13
185 / 160 / 49
Регистрация: 30.07.2013
Сообщений: 508
11.08.2013, 15:46 2
А ты код наверно в блокноте писал?
0
6 / 6 / 1
Регистрация: 21.04.2013
Сообщений: 28
11.08.2013, 16:50 3
пакет:
Java
1
package accountServiceProg;
создайте проект в IDE (Eclipse, InteliJ, NetBeans) и много ошибок будут сразу подсвечены
0
Заблокирован
11.08.2013, 17:02 4
Eclipse просит добавить конструктор для класса AccountServiceImpl
1
0 / 0 / 0
Регистрация: 09.08.2013
Сообщений: 8
12.08.2013, 10:47  [ТС] 5
Да действительно все писал в блокноте, но параллельно проверял в NetBeans. За конструктор спасибо, действительно проглядел. Но после добавления конструктора результат не изменился. компилятор по прежнему не находит интерфейс.
0
185 / 160 / 49
Регистрация: 30.07.2013
Сообщений: 508
12.08.2013, 10:50 6
создай в netbens либо антовский проект, либо мавенский и будет тебе счастье.
0
0 / 0 / 0
Регистрация: 09.08.2013
Сообщений: 8
12.08.2013, 11:00  [ТС] 7
Спасибо за совет, сейчас попробую. Но все же хочется узнать, почему из командной строки ничего не получается?
0
185 / 160 / 49
Регистрация: 30.07.2013
Сообщений: 508
12.08.2013, 12:36 8
вот так запусти: javac AccountService.java AccountServiceImpl.java
но только после исправлений всех ошибок в коде.

Добавлено через 11 минут
или еще проще. запусти javac *.java
0
0 / 0 / 0
Регистрация: 09.08.2013
Сообщений: 8
12.08.2013, 13:11  [ТС] 9
Компиляцию всего пакета я делал еще вчера. результат тот же. На данный момент все ошибки через NetBeans исправил, клиентская и серверная части работают. Но в командной строке все по прежнему. Я сейчас на стену лезть начну
0
185 / 160 / 49
Регистрация: 30.07.2013
Сообщений: 508
12.08.2013, 14:31 10
создай ant или maven проект. а потом либо netbeans-ом собирай, либо через командную строку.
0
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
13.08.2013, 14:27 11
А интерфейс AccountService уже скомпилирован? Где его код?
0
0 / 0 / 0
Регистрация: 09.08.2013
Сообщений: 8
17.08.2013, 19:26  [ТС] 12
Евгений, код интерфейса в том же пакете, он уже был скомпилирован, пробовал указывать компилятору через параметр -classpath как скомпилированный .class так и .java. и ни как. может я делаю ошибку где то в синтаксисе командной строки. На хабре встретил статью, где говорилось про параметр -sourcepath.

Добавлено через 19 минут
Вот что конкретно указываю в командной строке
F:\Project\Server>javac -classpath ./bin -d ./bin ./src/accountServiceProg/Accou
ntServiceImpl.java
0
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
19.08.2013, 14:13 13
Это будет работать только если интерфейс уже был скомпилирован с теми же ключами javac.

P.S. Можно добавить -sourcepath ./src, но понимания происходящего это не добавит.
1
0 / 0 / 0
Регистрация: 09.08.2013
Сообщений: 8
19.08.2013, 16:36  [ТС] 14
Стыдно признаться, но я нуб!!! Столько раз заглядывал в исходные файлы и никак не мог заметить ошибку в написании пакета! Теперь все работает.

Цитата Сообщение от Skipy Посмотреть сообщение
Это будет работать только если интерфейс уже был скомпилирован с теми же ключами javac.

P.S. Можно добавить -sourcepath ./src, но понимания происходящего это не добавит.

Евгений, в статье "Ликбез" про sourcepath ничего не сказано, но из описания в самом терминале и из статьи http://www.ibm.com/developerwo... h-windows/, я так понимаю, что у нас при компиляции есть два пути: либо указать через -sourcepath на еще не скомпилированный интерфейс (другой класс и т.д.), либо через -classpath указать уже на скомпилированный интерфейс (другой класс и т.д.). А результатом и в том и в другом случае будет компиляция реализующего интерфейс класса. Я все правильно понял или есть более глубокая разница между этими параметрами компилятора?
0
19.08.2013, 16:36
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
19.08.2013, 16:36
Помогаю со студенческими работами здесь

Не работает компиляция в командной строке
Здравствуйте. Перестали компилироваться проекты из командной строки. До этого вроде бы все было...

Компиляция кода в командной строке
на паре нам показывали как работать с прогой, написанной на ассемблере - cmd-> выбор директории ->...

Компиляция программы на C# в командной строке
using System; using System.Collections.Generic; using System.Linq; using System.Text; using...

Компиляция программы на Си на командной строке Windows
Привет всем. Вопрос следующий. Скоро у меня экзамены, там будут и теория, и практика. в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Что такое HCL Notes и как с ним работать
InfoMaster 10.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой комплексную платформу для совместной работы и обмена информацией в корпоративной среде. Это многофункциональное решение,. . .
Как работать с Git из Windows и Visual Studio
InfoMaster 10.01.2025
Работа с Git в Windows Работа с Git в операционной системе Windows может быть осуществлена с помощью различных инструментов, каждый из которых обладает своими уникальными возможностями и. . .
Аналог оператора switch case в Python
InfoMaster 10.01.2025
Оператор switch case используется в программировании для выбора одного из нескольких вариантов исполнения кода. Однако в языке Python этот оператор отсутствует. Понимание аналогов switch case в. . .
Отличия абстрактного класса от интерфейса
InfoMaster 10.01.2025
В современной разработке программного обеспечения существуют два основных механизма реализации абстракции: абстрактные классы и интерфейсы. Эти инструменты, хотя и схожи в своей основной цели -. . .
Как работать в Git
InfoMaster 10.01.2025
Git — это одна из наиболее популярных систем контроля версий, которая активно используется разработчиками по всему миру. Она позволяет эффективно управлять изменениями в коде, координировать работу. . .
Реализация передвижения персонажа в Unity3d на C#
InfoMaster 10.01.2025
Реализация передвижения персонажа в Unity3D начинается с правильной настройки проекта. Этот этап критически важен для создания отзывчивого и плавного управления. Рассмотрим основные шаги для создания. . .
Docker: руководство для начинающих
InfoMaster 10.01.2025
В современном мире разработки программного обеспечения контейнеризация стала неотъемлемой частью процесса создания и развертывания приложений. Docker, как ведущая платформа контейнеризации, произвела. . .
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru