Java & trable compilation (Не видет классы в одной директории.)

Модератор: Модераторы разделов

Аватара пользователя
Thoth
Сообщения: 432
Статус: Хорошему коту и в декабре март.
ОС: gentoo only !!!

Java & trable compilation

Сообщение Thoth »

Народ трабла токая :
есть обьект (трапеция) ,и есть к нему Driver ,всмысле класс с "main",которий роботает с обьктом "трапеция",так вот
трапеция прокомпилилась удачно а вот Driver не компилится ,выдает ошибку при создании обьекта типа "трапеция",
синтаксис был проверен много раз - так что ошибка не в этом ,по моему мнению трабла в том что java почему-то не опозноет обьекты в одной директории ,как это исправить не знаю .И кстати та-же прога отлично компилится в универе,а вот на ноуте моем не как ,ПЛЗ помогите.
П.С. я в Яве новичок так что если чо не правельно описывал извеняйте...:)
ГГГента vanilla-sources + some patchs, kde real-base only,GNU emacs
Юзаю gentoo патаму шта он рудит нипадецки, а всё астальное ацтой.
лапоть: OpenSuse-10.2
Спасибо сказали:
Аватара пользователя
Jan2ary
Бывший модератор
Сообщения: 630
Статус: Тщедушный очкарик

Re: Java & trable compilation

Сообщение Jan2ary »

Больше подробностей: какая ошибка, как выглядит код с ошибкой, как компилируешь?
Не шалю, никого не трогаю, починяю примус...
Спасибо сказали:
Аватара пользователя
Thoth
Сообщения: 432
Статус: Хорошему коту и в декабре март.
ОС: gentoo only !!!

Re: Java & trable compilation

Сообщение Thoth »

javac Ex2Driver.java
Ex2Driver.java:33: cannot resolve symbol
symbol : class CharacterTrapezoid
location: class Ex2Driver
CharacterTrapezoid trapez = new CharacterTrapezoid( topEdge, height,
^
Ex2Driver.java:33: cannot resolve symbol
symbol : class CharacterTrapezoid
location: class Ex2Driver
CharacterTrapezoid trapez = new CharacterTrapezoid( topEdge, height,
^
2 errors


Вот оно.... :huh:
А вот код:
CharacterTrapezoid trapez = new CharacterTrapezoid( topEdge, height,
name, symbol );
ГГГента vanilla-sources + some patchs, kde real-base only,GNU emacs
Юзаю gentoo патаму шта он рудит нипадецки, а всё астальное ацтой.
лапоть: OpenSuse-10.2
Спасибо сказали:
Аватара пользователя
Jan2ary
Бывший модератор
Сообщения: 630
Статус: Тщедушный очкарик

Re: Java & trable compilation

Сообщение Jan2ary »

А он в импортах есть? А пакедж прописан правильно? А CLASSPATH какой?
Не шалю, никого не трогаю, починяю примус...
Спасибо сказали:
Аватара пользователя
Thoth
Сообщения: 432
Статус: Хорошему коту и в декабре март.
ОС: gentoo only !!!

Re: Java & trable compilation

Сообщение Thoth »

A зачем в импортах его прописывать ,он - же в одной директории с Драйвером ,?????????????
класспас прописан правельно, в Драйвере есть еще импорты ,так на них ошибки нет.
ГГГента vanilla-sources + some patchs, kde real-base only,GNU emacs
Юзаю gentoo патаму шта он рудит нипадецки, а всё астальное ацтой.
лапоть: OpenSuse-10.2
Спасибо сказали:
neuralNetwork
Сообщения: 119
ОС: Debian Squeeze

Re: Java & trable compilation

Сообщение neuralNetwork »

Так а в самом-то Ex2Driver.java прописано, что класс принадлежит тому же пакету? Чтобы два класса находились в одном и том же пакете надо чтобы они не только лежали в одном каталоге, но и утверждения package для них обоих совпадали.
Спасибо сказали:
Аватара пользователя
Thoth
Сообщения: 432
Статус: Хорошему коту и в декабре март.
ОС: gentoo only !!!

Re: Java & trable compilation

Сообщение Thoth »

Так они не в одном покете ,это просто 2 класса ,в одном из них "маин",....
ГГГента vanilla-sources + some patchs, kde real-base only,GNU emacs
Юзаю gentoo патаму шта он рудит нипадецки, а всё астальное ацтой.
лапоть: OpenSuse-10.2
Спасибо сказали:
neuralNetwork
Сообщения: 119
ОС: Debian Squeeze

Re: Java & trable compilation

Сообщение neuralNetwork »

Если они не в одном пакете, то что они делают в одном каталоге?
В Java требуется, чтобы иерархическая структура каталогов с классами в фаловой системе повторяла структуру пакетов. Если Ваш класс CharacterTrapezoid принадлежит пакету, к примеру, my_package, то транслятор просто не будет искать его в текущем каталоге, он будет искать его в ./my_package/ В текущем каталоге ищутся только классы, находящиеся в неименованном пакете.

Попробуйте навести порядок в системе пакетов/каталогов, используя приведенное выше правило.
Спасибо сказали:
Аватара пользователя
Thoth
Сообщения: 432
Статус: Хорошему коту и в декабре март.
ОС: gentoo only !!!

Re: Java & trable compilation

Сообщение Thoth »

Я вообше перестал понимать ,
почему же тогда тот же самый код в универе прекрасно компилится???

П.С. фаилы приатачил (вроде приартачил) для более подробного изучения.И спосибо вам за помощь.
ГГГента vanilla-sources + some patchs, kde real-base only,GNU emacs
Юзаю gentoo патаму шта он рудит нипадецки, а всё астальное ацтой.
лапоть: OpenSuse-10.2
Спасибо сказали:
neuralNetwork
Сообщения: 119
ОС: Debian Squeeze

Re: Java & trable compilation

Сообщение neuralNetwork »

Thoth писал(а):
23.11.2005 16:36
П.С. фаилы приатачил (вроде приартачил) для более подробного изучения.И спосибо вам за помощь.

Куда приаттачил то? Не вижу...
Спасибо сказали:
Аватара пользователя
Thoth
Сообщения: 432
Статус: Хорошему коту и в декабре март.
ОС: gentoo only !!!

Re: Java & trable compilation

Сообщение Thoth »

<_< <_< <_< :) :) :)
ГГГента vanilla-sources + some patchs, kde real-base only,GNU emacs
Юзаю gentoo патаму шта он рудит нипадецки, а всё астальное ацтой.
лапоть: OpenSuse-10.2
Спасибо сказали:
neuralNetwork
Сообщения: 119
ОС: Debian Squeeze

Re: Java & trable compilation

Сообщение neuralNetwork »

Как это у Вас CharacterTrapezoid скомпилировался? :blink: :blink: :blink:

Код: Выделить всё

> javac CharacterTrapezoid.java
CharacterTrapezoid.java:37: incompatible types
found   : java.lang.String
required: int
        return ( _symbol );
                 ^
1 error
Оно и понятно:

Код: Выделить всё

    private String _symbol;

После того, как я исправил ошибку (написал public String symbol()) и заменил все обращения к классу SimpleInput (который Вы, к сожалению, не приложили :mellow: ) произвольными константами, у меня все скомпилировалось.
Так что, похоже, Ваш CharacterTrapezoid просто не скомпилировался, а Вы это как-то упустили из виду. :D

P.S. Оба Ваших класса (CharacterTrapezoid и Ex2Driver) все-таки находятся в одном и том же пакете (неименованном), поэтому совершенно законно их размещать в одном каталоге, причем транслятор и виртуальную машину для выполнения программы надо вызывать, находясь именно в этом каталоге.
Спасибо сказали:
Аватара пользователя
Thoth
Сообщения: 432
Статус: Хорошему коту и в декабре март.
ОС: gentoo only !!!

Re: Java & trable compilation

Сообщение Thoth »

ну что-то все ровно не работает ,не компилит???
ГГГента vanilla-sources + some patchs, kde real-base only,GNU emacs
Юзаю gentoo патаму шта он рудит нипадецки, а всё астальное ацтой.
лапоть: OpenSuse-10.2
Спасибо сказали:
neuralNetwork
Сообщения: 119
ОС: Debian Squeeze

Re: Java & trable compilation

Сообщение neuralNetwork »

У меня работает:

Исправлений в коде нет, лишь закомментирован импорт ненужного пакета intro2cs.tehuty и все файлы размещены по каталогам надлежащим образом.

Комментарий: у Вас в программе используются 3 класса. CharacterTrapezoid и Ex2Driver - в неименованном пакете, поэтому они должны лежать в текущем каталоге, SimpleInput - в пакете intro2cs.utils, поэтому он должен лежать в подкаталоге intro2cs/utils/ текущего каталога, чтобы его нашли компилятор и виртуальная машина.
Спасибо сказали:
Аватара пользователя
Thoth
Сообщения: 432
Статус: Хорошему коту и в декабре март.
ОС: gentoo only !!!

Re: Java & trable compilation

Сообщение Thoth »

Привет,я разобрался почему не роботала прога,так вот нужно было просто прописать текущую директорию в CLASSPATH,
я просто даже не предпологал что это нужно делать руками....... :blink: <_<
П.С. Большое спосибо за помощь........
ГГГента vanilla-sources + some patchs, kde real-base only,GNU emacs
Юзаю gentoo патаму шта он рудит нипадецки, а всё астальное ацтой.
лапоть: OpenSuse-10.2
Спасибо сказали: