Инструменты пользователя

Инструменты сайта


service:java

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
service:java [09.08.2024 07:58] viacheslavservice:java [19.02.2025 07:39] (текущий) – [Поиск версии в pom.xml] viacheslav
Строка 1: Строка 1:
 +====== Maven ======
 +Чтобы задать пути к Яве и Мавену, не надо использовать ''JAVA_HOME'', ''M2_HOME'' и т. д. Нужно задать PATH:
 +<code bash>
 +export PATH=/usr/lib/jvm/java-11-openjdk-11.0.22.0.7-1.e17.x86_64/bin:/opt/app/maven-3.6.3/bin:$PATH
 +</code>
 +https://stackoverflow.com/questions/26609922/maven-home-mvn-home-or-m2-home
 +
 +===== Поиск версии в pom.xml =====
 +Кривой способ, если нет нормального парсера XML.
 +<code bash>
 +# Т. к. тэг <version> встречается много где в pom.xml, нужно вытащить кусок после ID конкретного артефакта
 +fgrep 'artifact-name</artifactId>' -A 5 pom.xml |grep version |sed -E 's#.*>(.+)<.*#\1#'
 +4.0.0-rc-3-SNAPSHOT
 +
 +# Менее кривой способ (нет предполагаемого кол-ва строк после 'artifact-name</artifactId>')
 +sed -nE '/artifact-name<\/artifactId>/,/<\/version>/ s#.*<version>(.*)<\/version>.*#\1#p' pom.xml
 +# С заменой разделителя на # в диапазоне поисковых выражений (\# перед каждым)
 +sed -nE '\#artifact-name<\/artifactId>#,\#<\/version># s#.*<version>(.*)<\/version>.*#\1#p' pom.xml
 +</code>
  

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki