Eclipse: залежності пошуку Maven не працюють


91

Я створив новий простий проект Maven у новій робочій області.

Коли я відкриваю подання pom.xml' Dependenciesв редакторі Eclipse і вибираю Add..залежність, немає результатів пошуку незалежно від того, які критерії пошуку я ввожу в поля пошуку:

Це моментально дає мені, наприклад, Results for 'spring' (0) .

У моєму іншому робочому просторі, з моїми існуючими проектами, у мене немає цієї проблеми.

Чи є спосіб це виправити?


3
Я вважаю, що є рішення за таким посиланням: stackoverflow.com/questions/7065478/classic-error-unable-to-update-index-for-centralhttp-repo1-maven-org-maven2 [1]: stackoverflow.com/questions/ 7065478 /…
Ерік Ван,

Відповіді:


187

Пошук артефактів Eclipse залежить від файлу індексу сховища. Здається, ви не завантажили індексний файл.

Перейдіть до Вікна -> Prefrences -> Maven і поставте прапорець біля пункту «Завантажити оновлення індексу сховища під час запуску» . Перезапустіть Eclipse, а потім перегляньте подання прогресу. Потрібно завантажити індексний файл.

Після повного завантаження пошук артефактів буде готовий до використання.

Налаштування Maven

ОНОВЛЕННЯ Вам також потрібно відновити свій індекс сховища Maven у "поданні сховища maven".

У цьому вікні відкрийте «Глобальні сховища», клацніть правою кнопкою миші «центральний», поставте прапорець біля пункту «Увімкнути повний індекс», а потім натисніть «Відновити індекс» у тому ж меню.

Буде завантажено індексний файл 66М.

Репозиторії Maven -> Індекс відновлення


4
Вікно-> Налаштування-> Maven
McLovin

5
оновлення сховища при перезавантаженні займає дуже багато часу, не знаю, завершується воно чи ні, будь-яка альтернатива?
Vasanth Nag KV

5

У своєму затемненні перейдіть до Windows -> Налаштування -> Maven Налаштування Знімок екрана Maven Позначте пункт «Завантажити оновлення індексу сховища під час запуску». Можливо, ви захочете перезапустити затемнення.

Також перейдіть до Windows -> Показати подання -> Інше -> Maven -> Сховища Maven Знімок екрана перегляду сховища Maven

На панелі сховищ Maven розгорніть Глобальні сховища, клацніть правою кнопкою миші на Центральні сховища та поставте прапорець біля пункту «Повний індекс увімкнено», а потім натисніть «Відновити індекс» .

Знімок екрана повного індексу


1
Як ваша відповідь взагалі що-небудь додає до прийнятої раніше відповіді Сююн Ма? Наче ви скопіювали цю відповідь, але переформулювали її. Навіть знімки екрану у вашій відповіді майже ідентичні тим, що прийняті!
skomisa

@skomisa Я взагалі не скопіював відповідь. Я відповів на це, коли фактично зіткнувся з цією проблемою. Також відбитки екрану - з моєї роботи. Копіювання та вставка відповідей не має сенсу для stackoverflow. І якби я скопіював вставку, я б відповів на тисячі запитань, на які ще не пішов.
Hetal Rachh,

1
Добре, але ваша відповідь лише повторює інформацію, яка була надана у прийнятій відповіді.
skomisa

4

Ви можете отримати цей результат, якщо ви знаходитесь у корпоративному проксі-сервері, а новий проект не вказує на правильний файл settings.xml із обліковими даними проксі.

Ви також можете отримати це, якщо використовуєте проксі-сервіс Maven (наприклад, Nexus), а індекс у проксі-сервері якось зіпсований. Я не знаю способу описати, як це виправити. Дуріть з цим або зателефонуйте тому, хто створив проксі-сервіс Maven.

Ви також можете отримати це, якщо нова робоча область ще не завантажила індекс ні з Maven central, ні з проксі. (Це найкращий, оскільки вам просто потрібно почекати деякий час, і він само собою справиться.)


насправді у мене відкрито два робочі простори (у двох різних затемненнях), в одному з них він працює, а не в іншому, тому це не може бути проблемою проксі-сервера чи Інтернету. І в жодній робочій області немає файлу setting.xml .. Я думаю, ви можете мати рацію щодо завантаженого індексу, але я не знаю, як його завантажити (у мене ця проблема з вчора, тому марно чекати)
Majid Laissi

1
Я використовую MyEclipse, і налаштування можуть відрізнятися від ваших. Але у мене є кнопка, до якої ви переходите з вікном> налаштування> MyEclipse> Maven4MyEclipse> Налаштування користувача. Кнопка має позначку "Reindex", і якщо ви натиснете її, це може допомогти. Тут є зображення та більше інформації: (клацніть)
Lee Meador

До речі - settings.xml - це файл, знайдений у папці .m2 вашої папки користувача. (Windows 7 є c: \ Users \ YourName \ .m2, Linux ~ / .m2), і він може зберігати загальну інформацію для декількох робочих просторів. Ця сама сторінка налаштувань дозволяє вам вибрати її.
Lee Meador

Спасибі за ваш час. Я пробував це, не маючи удачі, але Reindex лише переіндексував моє місцеве сховище maven (бібліотеки у мене вже є)? А для файлу settings.xml він не існує ні в одній робочій області ((налаштування Eclipse / посилання C:\Users\XX\.m2\settings.xmlта налаштування користувача User settings file doesn't exist) і це одне і те ж для обох робочих областей, тому, мабуть, це не важливо.
Majid Laissi

інформація http://maven.apache.org/settings.html про те, що знаходиться у файлі. Поки в Maven Central немає проксі, паролів і всього, що вам потрібно, ви можете обійтися без нього.
Lee Meador

4

Для мене над цим номером працювали:

  • видалити ~ / .m2
  • увімкнути "Повний індекс увімкнено" у поданні сховища maven на центральному сховищі
  • "Індекс відновлення" на центральному сховищі maven

Після перезапуску eclipse все працювало добре.


3

Залежність додавання maven фактично походить від індексів maven. Якщо індекси оновлені, результат повинен бути звідти.

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

Інша річ, яка мене найбільше дратувала, це навіть те, що я все зробив, вона все ще нічого не показує, коли я набираю "весна". Тут я насправді помилився. Якщо ви просто введете якийсь додатковий текст "springframework", BOOM, результат є.


1

У мене така сама проблема. Жоден із запропонованих вище варіантів для мене не спрацював. Однак я виявляю, що якщо я дозволю вручну додати groupid / артефакт / версію для org.springframework.spring-core версії 4.3.4. ВИПУСКАТИ та зберегти pom.xml, залежності завантажуються автоматично, і пошук працює для вже наявних банок у сховищі. Однак якщо я зараз шукаю org.springframework.spring-context, якого немає в поточних залежностях, цей пошук все одно не працює.


0

Використовуйте https://search.maven.org/ вручну з префіксом fc: для пошуку назв класів. І Netbeans, і Eclipse здаються занадто дурними, щоб використовувати цей інтерфейс пошуку, і гігабайти завантажених індексів сховищ, здається, не містять інформації про клас. Загальна втрата дискового простору. Ці проекти IDE останнім часом так погано підтримуються, я б хотів, щоб вони перенесли розробку на GitHub.


0

Необхідно вказати ідентифікатор групи та ідентифікатор артефакту для завантаження необхідного файлу jar. Якщо ви хочете здійснити пошук, просто використовуйте *, * для цих полів.

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