Почему мой класс Java не компилируется, когда компилируется из каталога пакета? - PullRequest
4 голосов
/ 21 мая 2009

Я создал каталог под названием «middle», а внутри него еще один каталог с именем «tier», а внутри каталога «tier» - OrderManager.java, который является интерфейсом, и OrderManagerImpl.java, имеющий свою реализацию.

Проблема в том, что когда я пытаюсь скомпилировать OrderManagerImpl.java из-за пределов пакета middle.tier, он компилируется, но когда я делаю то же самое внутри пакета, он выдает мне следующую ошибку:

OrderManagerImpl.java:6: cannot find symbol
symbol: class OrderManager
public class OrderManagerImpl extends java.rmi.server.UnicastRemoteObject implements OrderManager{

Почему это так?

1 Ответ

8 голосов
/ 21 мая 2009

Поскольку компилятор ожидает найти ваш класс в соответствующей папке: ./middle/tier. Когда вы пытаетесь скомпилировать внутри пакета, компилятор ищет ваш класс в ./middle/tier/middle/tier

...