Eclipse: Ресурс не знаходиться на шляху збірки проекту Java


75

Мені надали вихідну папку ( src) проекту Java. Я створив .projectфайл, зберігав його в цій папці та імпортував цей проект до Eclipse 3.6 за допомогою опції Імпортувати наявні проекти до робочої області та додав до нього необхідні банки.

Тепер проблема полягає в тому, що коли я коли-небудь роблю ієрархію викликів на проекті, на ньому відображається поле сповіщення, в якому сказано: "Ресурс не знаходиться на шляху збірки Java-проекту"

Чи може хтось, будь ласка, повідомити мене, як це вирішити?

Будь ласка, подивіться зображення тут

введіть тут опис зображення

Дякую

Відповіді:


84

Ви можете додати srcпапку для побудови шляху шляхом:

  1. Виберіть перспективу Java.
  2. Клацніть правою кнопкою миші на srcпапці.
  3. Виберіть Побудувати шлях> Використати вихідну папку.

І ви закінчили. Сподіваюся, це допоможе.

EDIT: Зверніться до документації Eclipse


Я вибрав Перспективу Java та Клацнув на ній, перейшов до властивостей та вибрав шлях побудови Java, звідти я втратив, Будь-яка допомога?
Pawan

2
Як я вже згадував, не переходьте до властивостей. Повторюю, виконайте кроки 2 і 3. Запитайте мене ще раз, якщо у вас виникнуть труднощі. перевірте відредаговану відповідь.
АбдулАзіз

4
Клацнувши правою кнопкою миші на джерелі, я не зміг знайти Шлях побудови
Паван

Спробуйте це: Клацніть правою кнопкою миші на назві проекту -> Відкрити Властивості -> Шлях побудови Java -> Додати банки Це відкриє і відкриється невелике вікно з усіма вашими файлами jar з каталогом проектів. Перейдіть до файлів jar та виберіть усі файли jar. Сподіваюся, це вирішить вашу проблему.
АбдулАзіз

22
В Build pathостанніх версіях затемнення немає такого поняття, як .
dtheodor

19

Я намагаюся створити динамічний веб-проект за допомогою eclipse та його плагіна maven. Я вибираю maven-archetype-webapp і стикаюся з тією ж проблемою (на яку я стикаюся, намагаючись автоматично створювати геттери та сетери для деяких атрибутів).

Я обійшов це шляхом правої клацання на проекті, вибору Побудувати шлях -> Налаштувати Шлях збірки, а потім видалити дивний фільтр виключення "Виключено: **", який я знайшов у розділі / src / main / resources.


Дякую, це спрацювало і на мене з maven-archetype-
webapp

14

Нещодавно я зустрів подібну проблему. при імпорті проекту без .project, порожній .project, створений за замовчуванням без конструкторів. ось приклад, щоб це працювало.

<buildSpec>
    <buildCommand>
            <name>org.eclipse.jdt.core.javabuilder</name>
        <arguments>
        </arguments>
    </buildCommand>
</buildSpec>
<natures>
    <nature>org.eclipse.jdt.core.javanature</nature>
</natures>

Це спрацювало для мене, але прийнята відповідь більше не працює, я використовую ідентифікатор збірки: 20130919-0819
apm

9

У моєму випадку у мене був проект Java, що містить безліч підпапок, кожна з яких містить свою srcпапку.

project
-subfolder
--src/main/java
-subfolder2
--src/main/java

Не було доступних опцій, коли я використовував параметр "Шлях побудови" -> правою кнопкою миші, як зазначено в інших відповідях.

Мені довелося перейти до Проект -> Властивості -> Грані проекту та натиснути convert to faceted project.

Потім я отримав усі srcпапки, додані до шляху збірки.


7

Я знайшов подібну проблему та виправив її, виправивши файл .project . Для java-проекту .project файл повинен мати тег нижче в межах природи

org.eclipse.jdt.core.javanature


Приклад повного файлу .project

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>SampleProjectName</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
        <buildCommand>
            <name>org.maven.ide.eclipse.maven2Builder</name>
            <arguments>
            </arguments>
        </buildCommand>
        <buildCommand>
            <name>oracle.eclipse.tools.weblogic.sharedLibraryFrameworkValidator</name>
            <arguments>
            </arguments>
        </buildCommand>
    </buildSpec>
    <natures>
        <nature>org.eclipse.jdt.core.javanature</nature>
    </natures>
</projectDescription>

Але питання в тому, чому побудова проекту створює це і як воно генерується? Шахта була <name>org.maven.ide.eclipse.maven2Builder</name>нижче projectNature
surendrapanday

6

Це означає, що ваш проект не знаходиться на шляху компіляції Eclipse. Якщо після того, як проблема прийнятої відповіді не зникне, вам потрібно спочатку помістити цей проект у шлях компіляції. Для цього вам потрібно знову імпортувати проект у свою робочу область, після чого він буде працювати нормально.

Подібна проблема виникла у мене, і я зробив усе, що сказав вам, і це спрацювало для мене.


2
  1. Видалити проект із робочої області (зніміть прапорець біля фізичного видалення проекту з диска)
  2. перейдіть до місця проекту та видаліть файл .project
  3. Імпортуйте проект ще раз.

2

Використовуючи Eclipse Oxygen у мультимодульному проекті maven, переконайтесь, що ви не редагуєте файл у батьківському проекті maven .

Це призвело до того, що в "Відкритій декларації", "Ієрархії відкритого типу" та "Ієрархії відкритих викликів" відображається страшне діалогове вікно, про яке йдеться. Це може навіть зіпсуватись із автозаповненням.

Переконайтеся, що ви не редагуєте батьківський проект, а замість цього редагуйте дочірній проект, щоб уникнути помилки.


1

Рефакторинг ім'я папки src/main/resourceдляsrc/main/java .

Клацніть правою кнопкою миші проект> Побудувати шлях> Використовувати вихідну папку.


0

Все, що вам потрібно зробити, це перемістити папку Project під Src, тобто все, це зроблено. Повідомте мене, якщо виникнуть запитання.


2
Здається, це не додає нічого, окрім змісту прийнятої відповіді
Бересфорд,

0

Схоже, ви створили свій клас Java під src / main / resources замість src / main / java


0

Якщо ви імпортували проект із зовнішнього джерела за допомогою pom.xml після імпорту, перейдіть у меню Проект-> Властивості-> Maven та увімкніть Java EE - Це дозволить вирішити помилку


0

Якщо ви відкриваєте файл, перебуваючи в перспективі, відмінній від Java, у новому проекті, який ще не побудований, а потім повертаєтеся до перспективи Java, ви можете отримати це попереджувальне повідомлення. Закрийте файл і відкрийте його, перебуваючи в перспективі Java, а потім повторіть спробу. Тоді, якщо це не допоможе, допоможуть інші вже надані рішення.

Наприклад:

  • Імпортуйте проект, який знаходиться у сховищі git
  • Відкрийте перспективу git
  • Відкрийте подання Git Staging
  • Клацніть правою кнопкою миші на вихідному файлі Java та виберіть Відкрити версію робочого дерева
  • Відкрийте перспективу Java.
  • Тепер "звичайні" функції Java можуть працювати неправильно. Зверніть увагу, що шлях до файлу - це буквальний шлях до робочої станції, а не робочої області.

-1

У моєму випадку вихідна папка була вказана неправильно. Щоб вирішити проблему:

  • Клацніть правою кнопкою миші на назві проекту у провіднику проекту
  • Виберіть Properties
  • Виберіть Java Build Path
  • Виберіть Sourceвкладку та перевірте, що там є. Обов’язково Add Folder...виберіть та виберіть папку, яка є коренем вихідних файлів.

Як результат, ви помітите, що структура папок у провіднику проекту буде змінена, щоб замість цього відображати піктограми пакетів та імена пакетів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.