一、插件

pom文件中插件格式

    <build><plugins><plugin>      ..... </plugin></plugins></build>

1、scala代码打包插件

            <plugin><groupId>net.alchim31.maven</groupId><artifactId>scala-maven-plugin</artifactId><version>4.0.0</version><executions><execution><id>scala-compile-first</id><phase>process-resources</phase><goals><goal>add-source</goal><goal>compile</goal></goals></execution></executions></plugin>

2、带依赖打包插件

            <plugin><artifactId>maven-assembly-plugin</artifactId><configuration><descriptorRefs><descriptorRef>jar-with-dependencies</descriptorRef></descriptorRefs><archive><manifest><!-- 指定主类 --><mainClass>WordCountSpark</mainClass></manifest></archive></configuration><executions><execution><id>make-assembly</id><phase>package</phase><goals><goal>single</goal></goals></execution></executions></plugin>

二、依赖

2.1、解决依赖冲突

报错:某个包下的类找不到

1.查看依赖树查找冲突的jar包

方式一:使用mvn dependency:tree

mvn dependency:tree >data/tree.txt    //将依赖树导出到当前目录下

依赖树

[INFO] +- ru.yandex.clickhouse:clickhouse-jdbc:jar:0.3.0:compile
[INFO] |  +- org.apache.httpcomponents:httpclient:jar:4.5.13:compile
[INFO] |  |  \- org.apache.httpcomponents:httpcore:jar:4.4.13:compile
[INFO] |  +- org.apache.httpcomponents:httpmime:jar:4.5.13:compile
[INFO] |  +- org.lz4:lz4-java:jar:1.7.1:compile
[INFO] |  +- com.fasterxml.jackson.core:jackson-core:jar:2.9.10:compile
[INFO] |  +- com.fasterxml.jackson.core:jackson-databind:jar:2.9.10.8:compile
[INFO] |  \- com.github.RoaringBitmap:RoaringBitmap:jar:0.9.9:compile
[INFO] |     +- com.github.RoaringBitmap.RoaringBitmap:RoaringBitmap:jar:0.9.9:compile
[INFO] |     \- com.github.RoaringBitmap.RoaringBitmap:shims:jar:0.9.9:compile[INFO] |  +- org.apache.hadoop:hadoop-hdfs-client:jar:3.1.3:compile
[INFO] |  |  +- com.squareup.okhttp:okhttp:jar:2.7.5:compile
[INFO] |  |  |  \- com.squareup.okio:okio:jar:1.6.0:compile
[INFO] |  |  \- com.fasterxml.jackson.core:jackson-annotations:jar:2.7.8:compile 

方式二:下载Maven Helper 插件

file-settings-Plugins-搜索Maven Helper-install-重启idea

打开pom.xml文件-点击文件下面的 Dependency Analyzer-在Conficts处可以搜索冲突的jar包名

2.排除冲突的jar包:exclusion

        <dependency><groupId>ru.yandex.clickhouse</groupId><artifactId>clickhouse-jdbc</artifactId><version>0.3.0</version><exclusions><exclusion><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId></exclusion><exclusion><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId></exclusion></exclusions></dependency>

2.2 flink 相关依赖

<?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>com.yangyang</groupId><artifactId>202006flink</artifactId><version>1.0-SNAPSHOT</version><properties><java.version>1.8</java.version><maven.compiler.source>${java.version}</maven.compiler.source><maven.compiler.target>${java.version}</maven.compiler.target><flink.version>1.12.0</flink.version><scala.version>2.12</scala.version><hadoop.version>3.1.3</hadoop.version></properties><dependencies><!--idea环境中报错找不到 jdk.tools 时可添加此依赖--><dependency><groupId>jdk.tools</groupId><artifactId>jdk.tools</artifactId><version>${java.version}</version><scope>system</scope><systemPath>D:/software/Java/jdk1.8.0_131/lib/tools.jar</systemPath></dependency><!--1、idea本地测试flink程序查看web ui界面时添加此依赖--><dependency><groupId>org.apache.flink</groupId><artifactId>flink-runtime-web_${scala.version}</artifactId><version>${flink.version}</version></dependency><!--2、flink-java依赖--><dependency><groupId>org.apache.flink</groupId><artifactId>flink-java</artifactId><version>${flink.version}</version><scope>provided</scope></dependency><!--3、flink-streaming-java 依赖--><dependency><groupId>org.apache.flink</groupId><artifactId>flink-streaming-java_${scala.version}</artifactId><version>${flink.version}</version><scope>provided</scope></dependency><!--4、flink-clients 依赖--><dependency><groupId>org.apache.flink</groupId><artifactId>flink-clients_${scala.version}</artifactId><version>${flink.version}</version><scope>provided</scope></dependency><!--5、flink状态后端 rocksdb 依赖--><dependency><groupId>org.apache.flink</groupId><artifactId>flink-statebackend-rocksdb_${scala.version}</artifactId><version>${flink.version}</version><scope>provided</scope></dependency><!--6、flink连接 kafka 依赖--><dependency><groupId>org.apache.flink</groupId><artifactId>flink-connector-kafka_${scala.version}</artifactId><version>${flink.version}</version><!-- <scope>provided</scope>--></dependency><!--7、 mysql 连接 依赖--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.48</version><scope>provided</scope></dependency><!--8、 postgres-cdc 连接 依赖--><dependency><groupId>com.alibaba.ververica</groupId><artifactId>flink-connector-postgres-cdc</artifactId><version>1.4.0</version></dependency><!--9、 mysql-cdc 连接 依赖--><dependency><groupId>com.alibaba.ververica</groupId><artifactId>flink-connector-mysql-cdc</artifactId><version>1.2.0</version><scope>provided</scope></dependency><!--10、 阿里巴巴的 fastjson 依赖--><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.75</version><scope>provided</scope></dependency><!--11、 flink的 table API 依赖--><dependency><groupId>org.apache.flink</groupId><artifactId>flink-table-planner-blink_${scala.version}</artifactId><version>${flink.version}</version></dependency><!--12、 flink-cep复杂事件处理 依赖--><dependency><groupId>org.apache.flink</groupId><artifactId>flink-cep_${scala.version}</artifactId><version>${flink.version}</version><!--<scope>provided</scope>--></dependency><dependency><groupId>org.apache.flink</groupId><artifactId>flink-json</artifactId><version>${flink.version}</version><!-- <scope>provided</scope>--></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.2.68</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.48</version></dependency><dependency><groupId>com.alibaba.ververica</groupId><artifactId>flink-connector-mysql-cdc</artifactId><version>1.2.0</version></dependency><!--如果保存检查点到hdfs上,需要引入此依赖--><dependency><groupId>org.apache.hadoop</groupId><artifactId>hadoop-client</artifactId><version>${hadoop.version}</version><!-- <scope>provided</scope>--></dependency><!--Flink默认使用的是slf4j记录日志,相当于一个日志的接口,我们这里使用log4j作为具体的日志实现--><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.7.25</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>1.7.25</version></dependency><dependency><groupId>org.apache.logging.log4j</groupId><artifactId>log4j-to-slf4j</artifactId><version>2.14.0</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.20</version><scope>compile</scope></dependency><dependency><groupId>commons-beanutils</groupId><artifactId>commons-beanutils</artifactId><version>1.9.3</version></dependency><dependency><groupId>org.apache.flink</groupId><artifactId>flink-cep_2.12</artifactId><version>1.12.0</version><!-- <scope>provided</scope>--></dependency><dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>3.2.0</version></dependency><dependency><groupId>ru.yandex.clickhouse</groupId><artifactId>clickhouse-jdbc</artifactId><version>0.3.0</version><exclusions><exclusion><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-databind</artifactId></exclusion><exclusion><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-core</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.apache.flink</groupId><artifactId>flink-connector-jdbc_${scala.version}</artifactId><version>${flink.version}</version><!--<scope>provided</scope>--></dependency><!-- flinksql相关依赖:java-bridge、planner-blink--><dependency><groupId>org.apache.flink</groupId><artifactId>flink-table-api-java-bridge_${scala.version}</artifactId><version>${flink.version}</version><!--<scope>provided</scope>--></dependency><dependency><groupId>org.apache.flink</groupId><artifactId>flink-table-planner-blink_${scala.version}</artifactId><version>${flink.version}</version><scope>provided</scope></dependency><!-- ik分词器--><dependency><groupId>com.janeluo</groupId><artifactId>ikanalyzer</artifactId><version>2012_u6</version></dependency></dependencies>
</project>

Maven 依赖与插件相关推荐

  1. IDEA Maven 依赖分析插件Maven Helper

    IDEA 安装Maven Helper插件 1.打开setting,找到Plugins选项(安装Maven Helper 插件(如果有就跳过这一步)) 检索:Maven Helper 安装成功后,重新 ...

  2. 解决Maven依赖冲突的好帮手,这款IDEA插件了解一下?

    点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 作者:桔子214032 segmentfault.com/ ...

  3. 碰到Maven依赖冲突,想砸电脑?这个IDEA插件必须了解一下...

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 来源:https://urlify.cn/mAj6Nj # 何为依 ...

  4. Maven依赖管理和插件配置

    文章目录 导入依赖 依赖范围 Maven插件 插件添加位置 导入依赖 导入依赖坐标,无需手动导入jar包就可以引入jar,在pom.xml中使用标签引入依赖 导入junit的依赖 <depend ...

  5. maven插件依赖_当Maven依赖插件位于

    maven插件依赖 问题: 我们进行了一个集成测试,该测试创建了一个Spring ClassPathXmlApplicationContext ,同时这样做导致NoSuchMethodError爆炸. ...

  6. 当Maven依赖插件位于

    问题: 我们进行了一个集成测试,该测试创建了一个Spring ClassPathXmlApplicationContext ,同时这样做导致NoSuchMethodError爆炸. 事实证明,我们对S ...

  7. idea导入maven项目依赖报错_解决Maven依赖冲突的好帮手,这款IDEA插件了解一下?

    1.何为依赖冲突 Maven是个很好用的依赖管理工具,但是再好的东西也不是完美的.Maven的依赖机制会导致Jar包的冲突. 举个例子,现在你的项目中,使用了两个Jar包,分别是A和B.现在A需要依赖 ...

  8. Java技术--maven的assembly插件打包(依赖包归档)

    注:最近工作中遇到的一个问题,写了一个日志处理的模块,现在需要给第三方客户使用,但是该模块依赖了我们自己写的或者修改的一些jar包,可选择方案:1.所有jar包放在一个文件夹中给第三方(感觉好不专业) ...

  9. java assembly_Java技术--maven的assembly插件打包(依赖包归档)

    注:最近工作中遇到的一个问题,写了一个日志处理的模块,现在需要给第三方客户使用,但是该模块依赖了我们自己写的或者修改的一些jar包,可选择方案:1.所有jar包放在一个文件夹中给第三方(感觉好不专业) ...

最新文章

  1. 基于最短路方法的生物序列比对问题研究
  2. Bootstrap3 排版-缩略语
  3. metasploit 目录结构
  4. 从ubuntu中文论坛转载的一片超好的文章,慢慢学习中
  5. wxWidgets:使用自定义对话框和 sizer
  6. 关于JAVA中URL传递中文参数,取值是乱码的解决办法
  7. day8网络编程,面向对象1
  8. vuejs 和 element 搭建的一个后台管理界面【收藏】
  9. IOS学习之多线程(2)--创建线程
  10. unity3D 实战 《小十传奇》系列之三:控制层(下)
  11. Mysql约束 笔记
  12. Java实践(五)——类的声明与引用
  13. Wildcard Matching
  14. Delphi XE8移动应用开发中Andr​​oid权限设置
  15. Ubuntu 12.04 设置终端字体为文泉驿
  16. servlet 跳转到 jsp 乱码解决
  17. 『天涯杂谈』衣食住行小窍门
  18. python微信库无法登录怎么办出现异常_微信出现异常登录了怎么办
  19. 【Linux】Linux操作系统简单介绍 ----vim编辑器
  20. win10+hexo+github搭建个人博客

热门文章

  1. 数据猿专访农信互联魏春:如何在养猪场实现“普惠金融”?
  2. 第三部分PaddleX模型集_3.2 目标检测
  3. 西门子S7-200 PLC 与信捷DS2伺服通讯程序,实际应用于编码器同步控制案例,即将编码器直接连接到伺服驱动器上
  4. 项目总结---05(RocketMq使用对比)
  5. 了解计算机技术的课件,计算机教学课件
  6. 汽车车身控制器--TI解决方案
  7. h264/AVC文件格式叙述
  8. 第五章:B视频Include包含文件
  9. 李峋同款会动的爱心Python代码版
  10. 数字图像处理及matlab实现