如何在Spring Boot Application中设置活动配置文件。该应用程序将部署在独立的Tomcat中。
我有2个属性文件application- {profile} .properties。
我的申请班
@SpringBootApplication public class Application extends SpringBootServletInitializer { @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { return application.sources(Application.class); } public static void main(String[] args) { System.setProperty(AbstractEnvironment.ACTIVE_PROFILES_PROPERTY_NAME, "dev"); ApplicationContext ctx = SpringApplication.run(Application.class, args); } }
如果我运行带有嵌入式tomcat的应用程序,则将开发配置文件设置为活动状态,并且工作正常。但是当我在单独的tomcat中部署时。这没用。
我试图在configure方法中设置活动配置文件。但是当我从上下文中获取环境时,我得到了空指针异常。
关于如何设置活动配置文件的任何帮助。
我也遇到了同样的问题,经过半天的努力,我最终遇到了这个问题:
@SpringBootApplication public class MyApplication extends SpringBootServletInitializer { public static void main(String[] args) { System.setProperty(AbstractEnvironment.ACTIVE_PROFILES_PROPERTY_NAME, "dev"); SpringApplication.run(MyApplication.class, args); } @Override public void onStartup(ServletContext servletContext) throws ServletException { System.setProperty(AbstractEnvironment.ACTIVE_PROFILES_PROPERTY_NAME, "dev"); super.onStartup(servletContext); } }