未使用Springframework在Java中设置系统属性“ spring.active.profile”

时间:2019-06-07 07:35:00

标签: java spring spring-boot

我们尝试使用命令行参数设置活动配置文件。 我们在启动后立即打印系统属性“ spring.profiles.active”。 在本地这可以正常工作,但是在测试服务器上未设置该属性。

我们有一个运行中的Linux服务器作为我们的测试环境。 我们使用Java 8和2.9.2来开发Web应用程序

我们通过jenkins构建应用程序,该应用程序调用bash脚本来实现。 在那里,我们使用系统属性设置了应用程序的活动配置文件。

我在启动后立即建立了一些日志记录(第一行主方法)以打印相应的属性。当我在本地对其进行测试时,效果很好,每个配置文件均按预期进行打印。 在测试服务器上,尽管根本没有配置文件。

我试图更改配置文件,添加空格仔细检查了语句以排除错别字。

其他信息:我们最近试图将我们的应用程序从端口8443移到443,这导致了严重的问题。我们缺少使用1024及以下版本(Linux服务器)的权利。我们回到了8443,直到解决了版权问题。从那以后,我们遇到了上面提到的问题。

#!/bin/bash

CMD_DIR=`dirname $0`
JAR_DIR="$CMD_DIR/../../jars/tool/"
JAR_FILE="$(ls -t $JAR_DIR)"
$ARGS="-Dspring.profiles.active=dummylogin -Dslack.logonly=false -Dslack.channel=xxx"

echo $ARGS
exec java $ARGS -jar $JAR_DIR$JAR_FILE
private static void printActiveProfiles() {
        out.println(String.format("Active Spring-profiles: %s", System.getProperty("spring.profiles.active")));
    }

我希望已将“ dummylogin”设置为活动配置文件。

实际上没有配置文件: 日志: 活动的弹簧轮廓:null

0 个答案:

没有答案