NIFI源码Maven打包遇到问题记录

0.maven打包遇到问题打包失败了,不要clean!!!
1.文件commons-daemon-1.2.1-bin-windows.zip放在C:\Users\z00050365\AppData\Local\Temp下,不需解压;
2.文件swagger-ui-3.12.0.tar.gz解压后放在D:\DataCenter\code\nifi-rel-nifi-1.25.0\nifi-registry\nifi-registry-core\nifi-registry-web-api\target下,需解压,target文件没有时,自己创建;
3.注释wget这个命令的代码,包含标签里面的都注释掉

maven打包时遇到的问题:
0.maven打包遇到问题打包失败了,不要clean!!!
0.maven打包时过滤test;
0.maven打包太慢时,可以使用一个参数使用多线程打包:配置方法看:https://blog.csdn.net/qq_29752857/article/details/135413440和https://blog.csdn.net/weixin_55229531/article/details/130105891;
解决方式:去File | Settings | Build, Execution, Deployment | Build Tools | Maven中有个Thread count的参数,设置为1-8(可以是数字,表示并发线程数)或(也可以是C或c加上一个比例值,例如0.5C表示使用一半的CPU核心数进行并行构建)
1.maven的settings.xml文件,参考E:\apache-maven-3.9.6\conf\settings.xml的配置;
2.项目maven导入依赖时报PKIX path building failed,就是当前使用的jdk的SSL证书验证问题。
解决方式:下载maven依赖时,java在下载依赖时会导致证书信任的问题,需要将证书导入到所安装的jdk本地信任库中
1.到依赖的镜像仓库地址下载对应的证书,保存为cer或crt文件(镜像仓库地址指的是settings.xml中的mirror中url里的地址,地址直接复制到浏览器中,尝试下载证书,如果有的下载不了,百度查下,我是用别人给的直接用的,在E盘下.crt文件)
2.到jdk环境下的security目录,例如:jdk8:Java\jdk1.8.0_161\jre\lib\security,jdk11:Java\jdk-11.0.1\lib\security,(security文件自己在jdk中可以找到)
3.打开cmd,执行命令:(用管理员模式打开,jdk如果在C盘可能没有改的权限)
keytool -import -alias aliyun -keystore cacerts -file E://aliyun.crt
keytool -import -alias xfusion -keystore cacerts -file E://xfusion.crt
密码:changeit(随意)
3.项目maven导入依赖出错后,需要把repository里导入失败的依赖包删除,才能重新导入,否则会报错during a previous attempt。删除脚本:E:\Clean_Repository.bat;
4.第一个报错:
[ERROR] Failed to execute goal com.googlecode.maven-download-plugin:download-maven-plugin:1.7.1:wget (download-swagger-ui) on project nifi-registry-web-api: Connect to github.com:443 [github.com/20.205.243.166] failed: Connect timed out -> [Help 1]
解释:用wget命令下载github中的swagger-ui,超时报错。
解决办法:代码里全局搜wget这个命令,可以看到只有一个,去https://github.com/swagger-api/swagger-ui/archive/v s w a g g e r . u i . v e r s i o n . t a r . g z 这里下载 s w a g g e r − u i 。自己去浏览器这个网址下载下来 v {swagger.ui.version}.tar.gz这里下载swagger-ui。 自己去浏览器这个网址下载下来v swagger.ui.version.tar.gz这里下载swaggerui。自己去浏览器这个网址下载下来v{swagger.ui.version}.tar.gz,然后按他的要求解压并放到 p r o j e c t . b u i l d . d i r e c t o r y 目录下(这个 {project.build.directory}目录下(这个 project.build.directory目录下(这个{project.build.directory}指的是当前这个pom文件所在模块的target目录中)
并且注释wget这个命令的代码,包含标签里面的都注释掉。
5.第二个报错:(第二次尝试好像就没报错了,可能就是网络的问题)
这个E:\repository\com\github\eirslett目录下,下载了一个node-16.13.2-win-x64.zip包,去网上没下下来
解决办法:自己去对应报错提示的路径下载下来,并放在仓库指定的位置就行,不用解压。
6.第三个报错:
BUILD FAILURE下面的报错:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:3.1.0:run (download-commons-daemon) on project minifi-assembly: An Ant BuildException has occured: java.net.ConnectException: Connection timed out: connect
[ERROR] around Ant part …… @ 13:200 in D:\DataCenter\code\nifi-rel-nifi-1.25.0\minifi\minifi-assembly\target\antrun\build-main.xml
[ERROR] -> [Help 1]

org.apache.nifi.minifi.minifi-assembly:pom:1.25.0的报错
[WARNING] [echo] Downloading Commons Daemon Windows binaries.
[INFO] [get] Getting: https://repo1.maven.org/maven2/commons-daemon/commons-daemon/1.2.1/commons-daemon-1.2.1-bin-windows.zip
[INFO] [get] To: C:\Users\Z00050~1\AppData\Local\Temp\commons-daemon-1.2.1-bin-windows.zip
Connection timed out: connect

可以看出是在这个网址上下载了commons-daemon-1.2.1-bin-windows.zip文件,然后放在本机\AppData\Local\Temp\下的。
这个C:\Users\z00050365\AppData\Local\Temp目录下,下载了一个commons-daemon-1.2.1-bin-windows.zip包,去网上没下下来
解决办法:自己去对应报错提示的路径下载下来,并放在上面路径指定的位置就行,不用解压。

你可能感兴趣的:(maven,dubbo,java)