我們有一個health Utility jar,它作為maven 依賴添加到另一個專案A 中。我們想從health Utility jar 中獲取專案A 的maven 版本。有人可以建議如何獲得它嗎?
uj5u.com熱心網友回復:
看看 org.springframework.boot.SpringBootVersion,這是一種檢索類/包版本資訊的方法。
uj5u.com熱心網友回復:
這種情況最簡單(對于少數屬性):
“過濾”屬性到(彈簧使用的)屬性檔案中。
pom.xml :
...
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.6</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
...
<version>1.2.3.SNAPSHOT</version>
...
這會將 maven 配置為從中過濾所有.yaml,.yml和.properties檔案src/main/resources/(請參閱此處、此處和此處)。
然后在 src/main/resources/application.properties 中,您將:
my.domain.maven.project.version=${project.version}
# a key of your choice, but the value *has to be*
# ${project.version} or @project.version@
在構建(涉及process-ressources階段(例如mvn clean process-classes))上,這將(應該)“過濾”到${project.buildDir}(通常是目標/類)/application.properties:
my.domain.maven.project.version=1.2.3.SNAPSHOT
然后可以使用:
@SpringBootApplication // @Configuration/@Component/Bean-like/@...
public class MyApp {
@Value("${my.domain.maven.project.version}")
private String mavenProjectVersion;
// do something with it
}
但是當然有許多不同的解決方案/方法,例如:
- 使用
build-info(spring-maven-plugin) - properties-maven-plugin(“第三方”)
- ...
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/359803.html
