java - 我可以将内部 Spring Boot 变量传递给 gradlew 吗?

标签 java spring spring-boot gradle spring-profiles

我有一个问题。在我的应用中,我确实有几种配置:

application-prod.properties
application-test.properties
application-dev.properties

和主文件:

application.properties

包含一行:

spring.profiles.active=test

要构建和运行我正在使用的应用程序 ./gradlew buildNeeded

我能否以某种方式传递属性后缀:test、prod、dev,以便在构建过程中使用它,这样我就可以制作不同的 bash 脚本来在测试和生产服务器上运行安装过程?

我正在寻找类似 ./gradlew buildNeeded --spring.profiles.active=test 或任何可以工作的东西...

最佳答案

您可以使用 spring-gradle-plugin 实现这一点。

来自插件文档 Passing arguments to your application

Like all JavaExec tasks, arguments can be passed into bootRun from the command line using --args='' when using Gradle 4.9 or later. For example, to run your application with a profile named dev active the following command can be used:

./gradlew bootRun --args='--spring.profiles.active=dev'

关于java - 我可以将内部 Spring Boot 变量传递给 gradlew 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56004867/

相关文章:

java - Wicket:在哪里添加组件?构造函数?还是 onBeforeRender?

java - Log.d 在 Logcat Android Studio 中不显示 log.d

java - 无法匹配 Mongodb 中的模式搜索

java - spring boot中授权写在哪里?在 Spring 拦截器或过滤器中?

Java Spring-boot - 如何将@Autowired 与@ServerEndpoint 一起使用?

Java 8 LocalDateTime 正在解析无效日期

java - 自定义 PermissionEvaluation bean 导致循环引用和空指针异常

java - 如何在 spring-data-rest 中使用 Pageable 作为 get-query 参数?

amazon-web-services - 使用 CloudFormation 禁用 AWS ECS Fargate 中的 Spring Boot Data MongoDB 可重试写入

java - 计算多边形顶点的外角