Maven+Idea打jar包个人总结
文章目录
1、前言
不知道是不是idea对maven支持的不好,使用maven的package功能直接打jar遇到了太多问题,最终还是使用了上一次构建工件的方式打出来的jar包成功运行起来了。
期间遇到了常见的找不到包的问题,好不容易按照网上的方法mv package打出来包了,然后运行时又报错不到Main.class,然后再修改,再运行又报错:Error: A JNI error has occurred, please check your installation and try again,这下按照广大网友的方式在我这里怎么改pom.xml都不行,最后使用构建工件的方式打包后发现可以运行了,这里做下总结。
2、安装配置JDK
单独安装,不要使用IDEA默认的,配置好环境变量,多种Java相关软件都要使用,单独安装配置JDK好一些。
这里就不提如何安装了,还不太清楚的可以看这里:https://blog.csdn.net/weixin_39510813/article/details/79834553
3、Maven安装和配置
maven也最好自己安装并配置国内的源地址,否则也会出问题(就是配置了国内的源idea使用也经常出问题.,不知道是idea的问题还是maven的问题)
这里参考了这个大神的的内容,很详细:https://www.cnblogs.com/csyzlm/p/11660710.html
3.1 下载安装maven
下载地址:
https://maven.apache.org/download.cgi
Windows下下载zip直接解压到安装目录即可:
可直接解压至D盘等根目录。
3.2 配置环境变量
直接将安装目录\bin添加到path即可,当然也可以先创建环境变量,再以环境变量加相对路径的方式添加path。
比如:
验证,打开cmd输入命令验证即可:
C:\Users\admin>mvn -v
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Maven home: D:\apache-maven-3.8.1\bin\..
Java version: 1.8.0_161, vendor: Oracle Corporation, runtime: D:\jdk1.8.0_161\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
3.3 修改maven配置文件并创建本地仓库
通常我们需要修改解压目录下conf/settings.xml文件,建议直接通过vscode打开,该xml的格式要求比较高,很容易出错,而vscode可以显示你是否正确修改了该xml,这里是对vscode处理xml配置的总结:https://blog.csdn.net/weixin_39510813/article/details/115252619
- 本地仓库位置修改
在<localRepository>标签内添加自己的本地仓库路径
<!--自定义maven仓库路径-->
<localRepository>D:\Install\maven\maven-repository</localRepository>
- 修改maven默认的JDK版本(默认为1.4)
在<profiles>标签下添加一个<profile>标签,修改maven默认的JDK版本。
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
- 添加国内镜像源
添加<mirrors>标签下</mirror>,添加国内镜像源,这样下载jar包速度很快。一般使用阿里云镜像库即可。
<!-- 阿里云仓库 -->
<mirror>
<id>alimaven</id>
<mirrorOf>central</mirrorOf>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
一定要检查一下xml是否修改正确,格式错误的话替换maven配置后进行maven操作时会报错:Process terminated。
3.3 替换idea默认maven配置
设置->构建、执行、部署->构建工具->Maven:
4、修改pom.xml安装maven提供的依赖及常见问题汇总
不建议通过idea的maven进行package,只进行install和compile即可,后续打包还是使用构建工件的方式。
install时常见的问题汇总如下:
4.1 找不到包
如果这个包是本地jar包的话一般我们通过添加库的方式载入进来,特别是NDK方式生成的jar包,我们通过创建lib的方式添加进来,然后右键导入jar包,这时编辑器不会再飘红了,这个基础操作不明白的看这里:https://blog.csdn.net/weixin_39510813/article/details/108349765
这时编译还报错的话则需要修改pom.xml文件,通过添加依赖让maven可以找到该jar包(参考自这位大神:https://www.cnblogs.com/maguanyue/p/12378449.html):
<dependency>
<groupId>MyJar</groupId>
<artifactId>MyJar</artifactId>
<version>1.0.1</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/resources/lib/MyJar.jar</systemPath>
</dependency>
4.2 maven构建jar后运行一直出问题
maven构建jar包后运行一直出现各种问题,要么出现no main manifest attribute, in xxx.jar
,要么编译好出现Error: A JNI error has occurred, please check your installation and try again
这类问题,直接使用构建工件的方式创建构建,然后构建并build即可,可以参照这里:https://blog.csdn.net/weixin_39510813/article/details/117262061
当然也可以在网上找一些其他方式尝试修改pom.xml修复maven构建出的jar包的问题。