Flink ui 本地flink ui 报错 {“errors“:[“Not found: /“]}

在学习flink 的过程中,伊始的flink 版本是1.17.2 报题目的错误 ,百思不得其解,尝试更替了1.19.1 然后就成功了 ,期间未做任何的修改 。

ui 默认地址 : http://localhost:8081

pom 文件 如下

XML 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>TT</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>

        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-streaming-java</artifactId>
            <version>1.19.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-clients</artifactId>
            <version>1.19.1</version>
        </dependency>

        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-connector-datagen</artifactId>
            <version>1.19.1</version>
        </dependency>

        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-table-api-java-bridge</artifactId>
            <version>1.19.1</version>
        </dependency>

        <!--在本地的集成开发环境里运行Table API和SQL的支持-->
        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-table-planner-loader</artifactId>
            <version>1.19.1</version>
        </dependency>

        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-table-runtime</artifactId>
            <version>1.19.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-runtime-web</artifactId>
            <version>1.19.1</version>

        </dependency>

        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.25</version>
        </dependency>


        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-java</artifactId>
            <version>1.19.1</version>
        </dependency>

    </dependencies>



</project>

Java 类 ,flink 环境的初始化有很多种,这个只是本地环境的一种 :

java 复制代码
package com.org.flinkBase;

import org.apache.flink.api.common.functions.MapFunction;
import org.apache.flink.configuration.Configuration;
import org.apache.flink.streaming.api.datastream.DataStream;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.streaming.api.functions.ProcessFunction;
import org.apache.flink.util.Collector;

public class FlinkDemoCumulateUI {
    public static void main(String[] args) throws Exception{

        Configuration conf = new Configuration();
        //conf.setString(RestOptions.BIND_PORT,"8081-8089");
        StreamExecutionEnvironment env = StreamExecutionEnvironment.createLocalEnvironmentWithWebUI(conf);

        // 产生一个初始数据流,这里我们使用一个简单的集合作为数据源
        DataStream<String> initialStream = env.fromElements("Hello", "Flink", "World","Hello", "Flink", "World");

        // 定义一个 Map 算子,将流中的每个字符串转换为大写
        DataStream<String> transformedStream = initialStream.map(new MapFunction<String, String>() {
            @Override
            public String map(String value) throws Exception {
                return value.toUpperCase();
            }
        });

        // 使用 ProcessFunction 增加处理时间
        transformedStream
                .keyBy((String value) -> value) // 这里使用每个字符串本身作为 key,只是为了演示
                .process(new ProcessFunction<String, String>() {
                    @Override
                    public void processElement(String value, Context ctx, Collector<String> out) throws Exception {
                        // 模拟处理时间,例如,延迟5秒
                        Thread.sleep(85000);
                        out.collect(value);
                    }
                })
                .print(); // 输出转换后的数据流


        env.execute("Java Flink Job with Map Operator");


    }

}

Ui 结果:

感悟:

柳暗花明又一村,死磕到底的勇气,不断试错,新时代的爱迪生,努力寻找答案

相关推荐
AI你一生一世8 小时前
不止于时序存储:DolphinDB 如何成为 AI 时代的工业智能底座
java·人工智能·struts·时序数据库·工业智能·dolphindb·ai基础设施
云-缩影8 小时前
拆解 AI 图像生成应用的后端架构:ECS、OSS 和大模型 API 怎么配合
java·spring boot·后端
瑞克-桑切斯8 小时前
7、MySQL 慢查询排查与优化实战指南
java·服务器·数据库
海的透彻13 小时前
dockerfile如何快速构建容器(java服务)
java·开发语言
code2cat13 小时前
Java工具篇之Gradle:用任务图组织构建与交付
java·开发语言·单元测试·gradle
后台模板学习14 小时前
大模型 Prompt 工程在电商订单系统中的踩坑记录
java·python·prompt
w_zero_one14 小时前
算法--构造
java·数据结构·算法
SL_staff14 小时前
制造业订单交付崩盘?用四层协同框架重建交付可信度(技术实践)
java·产品·全栈
SL_staff15 小时前
打破风控迭代死循环:用决策编排重构业务与技术协作链路
java·产品·全栈
Mikko715 小时前
Redis 连接数满了服务端有错误信息吗?连接数不增加却命令超时?6.2 实测连接池、超时与大 key 怎么判定
java·spring boot·redis·后端