Пакет Java не существует ошибка - PullRequest
28 голосов
/ 16 июня 2011

Итак, есть папка /usr/share/stuff в корневом каталоге

, в которой есть куча java-файлов с определениями package org.name вверху

Я запускаю javac test.java, гдеtest.java находится в поддомене

Я добавил /usr/share/stuff к своему пути к классам.

и на вершине test.java Я добавил import org.name

Но яполучить package does not exist ошибку ... почему?

Ответы [ 6 ]

23 голосов
/ 16 июня 2011

Они находятся в нужных подкаталогах?

Если вы введете /usr/share/stuff в путь к классам, файлы, определенные с помощью package org.name, должны быть в /usr/share/stuff/org/name.

РЕДАКТИРОВАТЬ: Если вы этого еще не знаете, вам, вероятно, следует прочитать это: http://download.oracle.com/javase/1.5.0/docs/tooldocs/windows/classpath.html#Understanding

РЕДАКТИРОВАТЬ 2 : Извините, я не понял, что вы говорите об источнике Javaфайлы в /usr/share/stuff.Мало того, что они должны быть в соответствующем подкаталоге, но вы должны их скомпилировать.Файлы .java должны находиться не в пути к классам, а в исходном пути.(Сгенерированные .class файлы должны находиться в пути к классам.)

Вы можете скомпилировать их, если они не находятся в правильной структуре каталогов, но они должны быть, иначе будут генерироваться предупреждения внаименее.Сгенерированные файлы классов будут в нужных подкаталогах (где бы вы ни указали -d, если у вас есть).

Вы должны использовать что-то вроде javac -sourcepath .:/usr/share/stuff test.java, предполагая, что вы поместили файлы .java, которыенаходились под /usr/share/stuff под /usr/share/stuff/org/name (или в соответствии с именами их пакетов).

2 голосов
/ 28 августа 2018

Щелкните правой кнопкой мыши свой проект Maven в нижней части раскрывающегося списка. Maven >> reimport

у меня это работает для отсутствующих зависимостей

2 голосов
/ 04 августа 2014

У меня возникла эта проблема, при попытке использовать в моем приложении тему, упакованную как .jar, она работала при отладке приложения, но не работала при сборке / экспорте приложения.

Я решил эту проблему, распаковав jar и вручную добавив его содержимое в мою папку сборки, в результате чего:

project/
   │
   ├── build 
   │   └── classes
   │       ├── pt
   │       │   └── myAppName ... 
   │       └── com
   │           └── themeName ...
   ├── src
   └── lib

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

2 голосов
/ 09 июня 2012

У меня была точно такая же проблема при ручной компиляции через командную строку, мое решение состояло в том, что я не включил каталог -sourcepath, чтобы все java-файлы подкаталога также компилировались!

2 голосов
/ 16 июня 2011

Вам нужно иметь org/name dirs на /usr/share/stuff и размещать ваши org.name источники пакетов на этом dir.

0 голосов
/ 07 мая 2019

Я использую Intellij IDE, и когда я добавил новый подпроект в качестве зависимости, я получил похожую ошибку: Я решил это, перейдя в Файл >> Invalidate Caches / Restart ...

у меня это сработало из-за отсутствия зависимости

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...