前言:
项目差不多做完了,需要发布下接口试下远程的错误,重点是要测试下微信支付的回调是否能接收,打包呢遇到了一些小问题,还好解决了 今天发在这做个收集,有兴趣的朋友可以看下给点意见。
打包:
一、所用到的工具以及命令
工具:maven
命令:mvn install、mvn clean package
二、所遇到的错误及解决办法
由本地环境变量引发的问题,jdk配置问题
No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
以上代码段的意思是用的环境是jre而不是jdk, 这个就很有意思,因为一般不打包的情况下是不会出现这种错误提示的,只有打包的时候才会出现,以上原因是因为缺少了JAVA_HOME的环境变量设置,最简单的办法就是直接在maven.cmd的第一行加上
set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_40
C:\XXXX这个是我的jdk安装目录,各位记得改成自己的jdk目录哈
由于pom文件引发的问题,模块无法加载
[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[ERROR] Child module D:\sss\gitdemo\txdy-cloud-gateway of D:\sss\gitdemo\pom.xml does not exist @
@
[ERROR] The build could not read 1 project -> [Help 1]
[ERROR]
[ERROR] The project com.txdy.platform:cloud:0.0.1-SNAPSHOT (D:\sss\git_lumingpavilion-dev\pom.xml) has 1 error
[ERROR] Child module D:\sss\gitdemo\txdy-cloud-gateway of D:\sss\gitdemo\pom.xml does not exist
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException
以上代码段是说加载txdy-cloud-gateway报错,以上错误有2种情况造成 第一种就是模块中pom文件有问题导致的,第二种项目中的模块被删除了 而你恰好没更新最大的pom文件内容,博主就是属于第二种 我忘记更新了😭,这种比较好解决只需要在最大的pom文件中将报错的模块删除即可
删除前的样子
删除后
三、运行打包命令
好了到了这一步预示着以上错误都已经解决那么我们开始打包吧
第一步:先回到项目的主目录,执行:D:\sss\demo>mvn clean install
执行成功的结果如下:
[INFO] Reactor Summary for txdy-cloud 0.0.1-SNAPSHOT:
[INFO]
[INFO] demo-cloud ......................................... SUCCESS [ 0.287 s]
[INFO] demo-cloud-domain .................................. SUCCESS [ 10.567 s]
[INFO] demo-cloud-service ................................. SUCCESS [ 4.230 s]
[INFO] demo-cloud-testapi ..................................... SUCCESS [ 9.178 s]
[INFO] demo-cloud-task .................................... SUCCESS [ 2.897 s]
[INFO] demo-cloud-jobtracker .............................. SUCCESS [ 0.674 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 28.399 s
[INFO] Finished at: 2021-07-16T15:30:29+08:00
[INFO] ------------------------------------------------------------------------
基本看到 BUILD SUCCESS 这段文字不是红色的就算是成功了(忽略博主这里的红色哈,因为是代码段来的)
第二步:进入要打包的项目包目录,执行:D:\sss\demo\demo-cloud-testapi>mvn clean install
执行成功的结果如下:
[INFO] Building jar: D:\sss\demo\demo-cloud-testapi\target\demo-cloud-testapi.jar
[INFO]
[INFO] --- spring-boot-maven-plugin:2.3.2.RELEASE:repackage (repackage) @ demo-cloud-api ---
[INFO] Replacing main artifact with repackaged archive
[INFO]
[INFO] --- maven-install-plugin:2.5.2:install (default-install) @ txdy-cloud-api ---
[INFO] Installing D:\sss\demo\demo-cloud-testapi\target\demo-cloud-testapi.jar to C:\Users\Administrator\.m2\repository\com\demo\platform\demo-cloud-testapi\0.0.1-SNAPSHOT\demo-cloud-testapi-0.0.1-SNAPSHOT.jar
[INFO] Installing D:\sss\demo\demo-cloud-testapi\pom.xml to C:\Users\Administrator\.m2\repository\com\demo\platform\demo-cloud-testapi\0.0.1-SNAPSHOT\txdy-cloud-api-0.0.1-SNAPSHOT.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12.359 s
[INFO] Finished at: 2021-07-16T15:34:38+08:00
[INFO] ------------------------------------------------------------------------
同理 BUILD SUCCESS 这段文字不是红色就算是成功了,另外 Building jar 会告诉你打包的jar包位置在那,当然一般都会在打包项目的target文件夹中(忽略博主这里的红色哈,因为是代码段来的)
第三步:最后一步也是最重要的环节,执行:mvn clean package,这是打包命令 将之前的包清除重新打包的意思
执行成功的结果如下:
[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ demo-cloud-testapi ---
[INFO] Tests are skipped.
[INFO]
[INFO] --- maven-jar-plugin:3.2.0:jar (default-jar) @ txdy-cloud-api ---
[INFO] Building jar: D:\sss\demo\demo-cloud-testapi\target\demo-cloud-testapi.jar
[INFO]
[INFO] --- spring-boot-maven-plugin:2.3.2.RELEASE:repackage (repackage) @ demo-cloud-testapi ---
[INFO] Replacing main artifact with repackaged archive
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 16.142 s
[INFO] Finished at: 2021-07-16T15:42:17+08:00
[INFO] ------------------------------------------------------------------------
同理 BUILD SUCCESS 这段文字不是红色就算是成功了,另外 Building jar 会告诉你打包的jar包位置在那,当然一般都会在打包项目的target文件夹中(忽略博主这里的红色哈,因为是代码段来的)
总结:
好了以上就是Java 使用maven打包的全部步骤,简单来说就是先检查pom文件,在检查自身电脑的环境,如都没问题便可开始打包啦。
最后的最后也不知道说点啥就给各位跳个舞吧😏
以上是否有给到您帮助呢?如博主哪些地方写的有问题欢迎您的指点呀,那么今天的文章到此结束啦,我是 入门菜鸟程序猿阿豪 改日再会啦, 拜拜~