开发过程中正常运行的程序,打包之后可能会遇到@Component类加载混乱导致程序无法正常运行。
可以在需要后加载的类加注解@DependsOn(“先加载的类名,首字母小写”)
如
/**
*类1
*/
@Component
@ConfigurationProperties(prefix = "kettle")
@Data
public class KettleConfig {
/**
* 日志文件输出路径
*/
public static String logFilePath;
/**
其他内容
*/
}
/**
*类2
*/
@Component
@Log4j2
@DependsOn("kettleConfig")
public class KettleInit implements InitializingBean {
@Override
public void afterPropertiesSet() throws Exception {
log.info("#################");
log.info("KettleInit");
log.info("#################");
log.info(KettleConfig.logFilePath)
}
}