У меня есть проект, управляемый Maven, который я пытаюсь заставить работать в Eclipse. Проблема в том, что все зависимости, которыми управляет Maven, недоступны внутри кода Java.
В Eclipse я получаю сообщение об ошибке при импорте соответствующих классов:
The type org.apache.commons.math3.util.Pair is not accessible
в то время как когда я пытаюсь построить проект с помощью Maven, я получаю сообщение об ошибке:
package org.apache.commons.math3.util is not visible (package org.apache.commons.math3.util is declared in the unnamed module, but module org.apache.commons.math3.util does not read it)
Зависимости были загружены Maven, и я могу найти их в папке .m2. Я даже вижу файлы jar, глядя на путь сборки Java в Eclipse.
Я также получаю ту же ошибку, когда пытаюсь использовать Maven через командную строку.
Кто-нибудь знает, почему это может происходить?
Очистите проект, а затем щелкните правой кнопкой мыши проект, перейдите в Maven -> Обновить проект. мне это должно помочь.
Можете ли вы опубликовать свой pom.xml? Также вы пытались удалить весь репозиторий maven?
@AndreasHartmann Я пытался удалить весь репозиторий, но это не помогло. Вот pom.xml: github.com/NetCal/DNC/blob/master/pom.xml
Я полагаю, у вас есть module-info.java в вашем проекте?
Если он не основан на командной строке Maven или в Eclipse, вероятно, существует какая-то проблема с путем к классам. Ошибка предполагает, что код пытается получить доступ к чему-то, что не является общедоступным. Попробуйте mvn dependency:tree (или аналог Eclipse). Внимательно следите за всем использованием библиотеки Commons Math, чтобы убедиться, что версии непротиворечивы. Если нет, то с чего начать исправлять.




однажды это случилось и со мной. Похоже, проблема с разрешением в моем случае или проблема с дисковым пространством.
Также попробуйте удалить зависимость с диска и снова запустить mvn clean install.
Убедитесь, что вы используете актуальную версию maven, и выполните ALT+F5 + принудительное обновление зависимостей maven.
К сожалению, это не решило проблему, и это определенно не проблема с дисковым пространством.
Можете ли вы поделиться кодом или его частью, чтобы я мог протестировать?
Также попробуйте добавить связанную банку в путь сборки в качестве первой попытки. Также проверьте свой файл .classpath. Мой содержит что-то вроде этого, а не все зависимости: ` <classpathentry kind = "con" path = "org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> <attributes> <attribute name = "maven.pomderived" value = "true"/> </атрибуты> </classpathentry> `
Мне удалось это исправить. Я не знаю почему, но, не создавая файл module-info.java, когда меня спросило eclipse, все работало нормально.
У меня был неполный файл module-info.java: его удаление устранило мои проблемы. Я предполагаю, что правильная настройка также сработала бы, но мне нужно понимать файлы модулей.
Попробуйте выполнить команду mvn eclipse:eclipse. А также очистите и обновите свой проект в eclipse.