flink开发中根据环境加载不同配置踩坑

记录今天工作中遇到的问题,因为有三个环境的开发,test,pre,prod,如果要写三套代码那就有点不符合程序员的做事习惯。所以根据不同环境,加载不同配置就是很常用的方式。

无法加载配置文件

传入的参数变量已经读取到了,但是一直到了加载的properties的时候一直失败。来回改这一段代码,改来改去,我也没发现太大问题。实在没有办法,只能请教gpt。

java 复制代码
String fileName = "application-" + env + ".properties";
Thread.currentThread().getContextClassLoader().getResourceAsStream(fileName)

解题思路

1、是否存在配置文件

一开始用了其他的ai,告诉我怎么改写代码一堆东西。之后我换了gpt,gpt首先告诉我的是要确认是否存在对应的配置文件。给我了一条命令,结果我居然没有配置文件。当时我用解压工具打开jar的时候是有配置文件的。带着怀疑的态度,我继续按照gpt的做。

shell 复制代码
 jar tf xxx.jar | grep application

2、pom指定打包配置文件

在pom中添加了这一段,打包的时候要指定打包的资源文件。

xml 复制代码
        <resources>
            <resource>
                <directory>src/main/resource</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                    <include>**/*.yml</include>
                    <include>**/*.yaml</include>
                </includes>
            </resource>
        </resources>

3、再次验证

好这次成功了,flink作业也正常跑起来了。

总结

做过了,就是经验,就是积累。不要怕小,好记性不如烂笔头,每天一个小问题,一年就很不简单了。

相关推荐
得物技术2 天前
从埋点需求到规则资产:Hermes Agent 重构得物数仓工作流
大数据·llm·ai编程
久美子2 天前
AI驱动数仓建设的Harness工程实践——本体建模、知识分层与上下文工程
大数据
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
大志哥1233 天前
ES和Logstash日志链路系统上线后遭遇切片爆炸(解决)
大数据·elasticsearch
果丁智能3 天前
物联网智能锁赋能集中式住宿:身份核验与远程权限管控的全链路技术实践
大数据·人工智能·物联网·智能家居
ApacheSeaTunnel3 天前
实战演示 | 基于 Apache SeaTunnel 与 Apache DolphinScheduler 实现 MySQL 到 Doris 离线定时增量同步
大数据·mysql·开源·doris·数据集成·seatunnel·数据同步
weixin_397574093 天前
PDF复杂表格的1:1还原引擎:跨页表格自动拼接技术实战
大数据·人工智能·pdf
极光代码工作室3 天前
基于数据仓库的电商数据分析平台
大数据·hadoop·python·spark·数据可视化
秋名山码民3 天前
Graph RAG 深度解析:从向量检索到知识推理的技术演进
大数据·人工智能·rag
m0_380167143 天前
面向开发者的Top10加密货币数据API(2026年最新)
大数据·人工智能·区块链