#java #maven #spring-mvc #pom.xml #maven-plugin
#Ява #знаток #весна-mvc #pom.xml #maven-плагин
Вопрос:
Я хочу удалить ненужные зависимости из pom.xml. Я использовал зависимость mvn:анализ, и я получил эти результаты. Нужно ли удалять использованные необъявленные зависимости и неиспользуемые объявленные зависимости? Могу я узнать, как я могу удалить зависимости из maven, чтобы я мог быстро создать свой проект?
[WARNING] Used undeclared dependencies found: [WARNING] com.fasterxml.jackson.core:jackson-annotations:jar:2.11.2:compile [WARNING] org.springframework:spring-beans:jar:5.2.9.RELEASE:compile [WARNING] junit:junit:jar:4.13:compile [WARNING] org.springframework:spring-jdbc:jar:5.2.9.RELEASE:compile [WARNING] com.sap.cloud.security.xsuaa:spring-xsuaa:jar:2.8.0:compile [WARNING] com.google.code.gson:gson:jar:2.8.6:compile [WARNING] com.zaxxer:HikariCP:jar:3.4.5:compile [WARNING] com.sap.cloud.instancemanager:util:jar:1.17.2:compile [WARNING] org.springframework:spring-core:jar:5.2.9.RELEASE:compile [WARNING] org.springframework.boot:spring-boot-autoconfigure:jar:2.3.4.RELEASE:compile [WARNING] Unused declared dependencies found: [WARNING] com.sap.cds:cds-starter-spring-boot-odata:jar:1.17.1:compile [WARNING] org.apache.tomcat.embed:tomcat-embed-websocket:jar:9.0.53:compile [WARNING] org.apache.tomcat:tomcat-annotations-api:jar:9.0.53:compile
Комментарии:
1. Насколько я знаю, используемые необъявленные зависимости-это те, которые вы не объявили в своем pom.xml но являются переходными зависимостями от тех, которые вы объявили, плюс ваш код напрямую использует их. Это может привести к проблемам с построением, если версия транзитивной зависимости изменится, поэтому вам может потребоваться подумать о ее объявлении. Неиспользуемые объявленные зависимости-это те, которые вы объявили в своем pom.xml но ваш код, похоже, их не использует — их можно безопасно удалить, но плагин также мог пропустить использование, поэтому попробуйте и проверьте. Если они все еще нужны, скажите Maven, чтобы он игнорировал их при анализе.
2. Я бы сделал шаг за шагом…удалите один, проверьте свои тесты и продолжайте…
3. @Thomas Не могли бы вы рассказать мне, как удалить неиспользуемые объявленные зависимости, поскольку они не являются прямыми библиотеками в pom.xml
4. Посмотри на свою pom.xml, вы должны были перечислить их там — вот что, как я понимаю, означает «объявлено».
5. есть какие-нибудь комментарии от экспертов ?