Невозможно использовать существующие пакеты Java в Eclipse?

Я изучаю Java от мышления Брюса Эккеля в Java. После прочтения пакетов в начале книги я подумал, что у меня это получилось, но когда я решил использовать дополнительный код (в виде одного ZIP-файла), я больше не уверен.

The ZIP file contains packages in the correct hierarchy. I've an extracted copy of the ZIP too. Let's call this folder TIJ4. Both the ZIP and the folder are located on my Desktop. I'm working with an example Shapes.java which has an import statement like this: import polymorphism.shape.*;. I imported this folder in the Project Properties>Libraries>Add external class folder. The strange thing is that Eclipse does not show an error on the import line, yet it cannot resolve names to types. I could manually create a package, then a class from within Eclipse, but isn't there an easier way to do this?

Я обдумал это, но у меня, похоже, нет точной проблемы. Вот что у меня до сих пор:

1)New Java Project created. Created a class file Shapes.java in the project: New Java Project created. Created a class file <code>Shapes.java</code> in the project:

2) Project Properties>Libraries>Add External Class Folder. Selected my folder TIJ4. Notice that the error on the import is now gone. Apparently Eclipse has found the polymorphism package. Selected my folder **TIJ4**. Notice that the error on the <code>import</code> is now gone. Apparently Eclipse has found the <code>polymorphism</code> package.

3) Но я все еще получаю XXX не может быть разрешен для ошибок типа повсюду!

what do I do? I also tried Project>Build Path>Add external archives and selected the ZIP, however, ended up in the same place.

0
nl ja de
Добавьте содержимое папки TlJ4 в папку src и проверьте его (скопируйте и вставьте). удалить папку TlJ4 из библиотек ссылок
добавлено автор Vinay, источник
@black_stallion жаль, что папка, но папки внутри папки TlJ4 должны быть скопированы в папку src.
добавлено автор Vinay, источник
@vini Не помогло. Копирование папки TIJ4 в src вызывает пакет Snippet и автоматически создается файл Snippet.java.
добавлено автор Kedar Paranjape, источник
@Gutenberg Это тоже не помогло.
добавлено автор Kedar Paranjape, источник
@vini Вы имеете в виду только Eclipse, верно? Пробовал копировать полиморфизм , а также polymorphism.shape вручную. Все равно не уходи!
добавлено автор Kedar Paranjape, источник
@MadhusuthananSeetharam Да, вы правы. ZIP (и, следовательно, папка) содержит только .java-файлы.
добавлено автор Kedar Paranjape, источник
Имеет ли zip-файл только исходные файлы Java? Я думаю, что в zip-файле нет скомпилированных файлов классов. Это правильно?
добавлено автор Madhusuthanan Seetharam, источник
Ctrl + shift + o
добавлено автор Gutenberg, источник

1 ответы

Поскольку Zip-файл содержит только источники Java, вам придется их компилировать. Простой способ, прямо сейчас, извлечь их в каталог src в проекте eclipse. Таким образом, они будут скомпилированы и автоматически включены в путь к классам.

Причина того, что не удалось разрешить классы, даже ошибка импорта, исчезла, это zip-файл содержит каталоги, которые удовлетворяют структуре пакета, но в них не найдены скомпилированные классы (файлы .class).

1
добавлено
Да, это похоже на работу. Но это не использует функцию пакета Java, не так ли? Потому что мне больше не нужно импортировать что-либо в любом файле. Он просто отлично работает. (Фактически, Eclipse показывает ошибку в неудавшемся пакете, которого нет)
добавлено автор Kedar Paranjape, источник
Значит ли это, что для import для успешной работы вам нужны файлы .class для этих классов?
добавлено автор Kedar Paranjape, источник
Да, infact все файлы .java, содержащие необходимые классы, находятся в папке src моего проекта. И, следовательно, я предполагаю (как подтверждает Eclipse), я использую пакет по умолчанию?
добавлено автор Kedar Paranjape, источник
Итак, короче, у меня не было файлов .java. Предположим, что у меня уже есть .class-файлы, тогда было бы просто поставить их в папку bin в правильной иерархии пакетов, правильно?
добавлено автор Kedar Paranjape, источник
Была моя первая попытка с Java! Спасибо за ваше время! Все хорошо. Теперь я могу правильно использовать пакеты.
добавлено автор Kedar Paranjape, источник
Прежде чем отвечать на ваш вопрос, дайте мне знать, присутствует ли файл RandomShapeGenerator.java в структуре полиморфизма/фигур в структуре dir в src?
добавлено автор Madhusuthanan Seetharam, источник
Да. Packaging организует скомпилированные файлы классов в пакеты (читать каталоги) для загрузчиков классов для поиска и загрузки. Эти каталоги могут быть либо на диске, либо сжаты в банке или архиве zip. Если вы посмотрите под каталогом bin вашего проекта eclipse, вы увидите файлы классов, аккуратно организованные в соответствии с их пакетами. Используйте «Навигатор» вместо «исследователя пакетов», чтобы посмотреть на структуру каталогов.
добавлено автор Madhusuthanan Seetharam, источник
Да, почти. Но bin - опасная папка для размещения ваших файлов классов, так как eclipse будет очищать ее каждый раз при ее создании. Вам нужно поместить его в отдельную папку или упаковать в файл zip или jar и указать это в пути сборки или пути к классам.
добавлено автор Madhusuthanan Seetharam, источник
pro.jvm
pro.jvm
3 503 участник(ов)

Сообщество разработчиков Java Scala Kotlin Groovy Clojure Чат для нач-их: @javastart Наш сайт: projvm.com projvm.ru Наш канал: @proJVM Вакансии: @jvmjobs Конфы: @jvmconf

Java & Co
Java & Co
2 370 участник(ов)

Можно обсуждать с матом и без всё, что касается жабы, вплоть до холиваров. НЕ ИМЕЕТ ОТНОШЕНИЯ К САЙТУ JAVARUSH.RU ПРАВИЛА - https://t.me/javarush/75723 Вакансии сюда - https://telegram.me/joinchat/B7IzvUCnfo6d8t3yIxKguQ По вопросам - @thedude

learn.java
learn.java
1 888 участник(ов)

Чат для начинающих и не только Статистика: https://combot.org/chat/-1001083535868 Основной чат - @jvmchat

IDE и редакторы — русскоговорящее сообщество
IDE и редакторы — русскоговорящее сообщество
393 участник(ов)

Общаемся, сравниваем и помогаем друг другу решать задачи с продуктами JetBrains, VS Code, Atom, vim, Emacs, Sublime и т.д. Всё в одном месте, ведь каждый из них хорош по своему. См. также: @js_ru, @typescript_ru, @react_js, @nodejs_ru, @javascript_jobs

Java Underground
Java Underground
169 участник(ов)

https://vk.com/javatutorial

Javanese Questions
Javanese Questions
109 участник(ов)

Чат предназначен для обмена знаниями строго в формате в вопрос-ответ. Тема — Java, Kotlin и Android. Вопрос должен быть предварительно прогуглен, понятно и грамотно сформулирован, помечен хэштегами. Ответ — тем более. Куски кода размером в несколько строк можно писать прямо здесь, для больших кусков кода стоит использовать http://gist.github.com/, http://pastebin.com/, https://codeshare.io/ или любой аналогичный сервис. В некоторых случаях можно прикреплять скриншоты. Стикеры и гифки запрещены. Дополнять и уточнять вопросы и ответы — редактированием исходного сообщения. Обсуждения должны приводить к редактированию вопроса/ответа и удаляться. По хештегам можно искать существующие вопросы и овтеты: #вопрос #ответ #git #generics #java #server #awt #javafx #swing #kotlin #anko #tornadofx #ktor #android #recyclerView #performance #arch #network #permissions #storage #async