通过maven管理jar,当工程是jar类型时,发布时无法将依赖的jar一起打成jar包,本文将解决这个问题,和大家分享讨论
第一步,首先在pom.xml文件中,添加maven-assembly-plugin插件,代码如下
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2.1</version>
<configuration>
<descriptors>
<descriptor>assembly.xml</descriptor>
</descriptors>
</configuration>
</plugin>
assembly.xml代码如下:
<assembly
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
<id>jar-with-dependencies</id>
<formats>
<format>jar</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<dependencySets>
<dependencySet>
<unpack>false</unpack>
<scope>runtime</scope>
</dependencySet>
</dependencySets>
<fileSets>
<fileSet>
<directory>${project.build.outputDirectory}</directory>
</fileSet>
</fileSets>
</assembly>
通过assembly.xml描述,我们可以将第三方依赖,统一打包到{artifactId}-jar-with-dependencies.jar 这个jar包,这样方便我们管理第三方依赖
第二步,通过maven的maven-jar-plugin插件,我们可以配置MANIFEST.MF中的Main-Class和Class-Path,声明程序入口和依赖包的路径,代码如下:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<archive>
<manifest>
<!--程序入口-->
<mainClass>cn.creditease.loan.exchange.main.server.SpringRmiServer</mainClass>
<addClasspath>true</addClasspath>
<!--依赖的第三方包路径-->
<classpathPrefix>lib/</classpathPrefix>
</manifest>
<manifestEntries>
<Class-Path>.</Class-Path>
</manifestEntries>
</archive>
</configuration>
</plugin>
第三步,新建一个文件夹,比如E:\test,将{artifactId}-jar-with-dependencies.jar和java -jar E:\test\{artifactId}.jar拷贝到test目录,在test目录下,新建一个lib目(<classpathPrefix>lib/</classpathPrefix>,放到lib目录下)和一个startup.bat文件,编辑startup.bat文件,添加 java -jar E:\test\{artifactId}.jar
最后,用压缩工具打开{artifactId}-jar-with-dependencies.jar,将里面所有的第三方jar全部拷贝到lib目录下,运行startup.bat文件,就可以运行!
分享到:
相关推荐
主要介绍了Maven发布Jar包中文乱码解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
maven打包 maven打jar包详细步骤
maven-jar-plugin-3.1.1.jar
maven-jar-plugin-2.6.jar。解决maven官网上下载不下来或者下载速度慢的问题。
批量导入maven本地jar包
maven-jar-plugin-2.3.2.jar
maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包 maven2 jar包
MAVEN下载JAR包时经常下载一半没有完成,如果项目中引用了这些JAR包项目就会无法启动,该工具就是可以扫描这些有问题的jar包并且删除,如果安装了JDK并配置环境变量直接双击运行即可
maven 打jar包,source包,并上传到本地maven库
java运行依赖jar包
刚学习Java的时候找jar包有点繁琐,后来才知道可以用maven直接导入,现在把maven中常用的jar包库上传,方便初学者。加油(ง •_•)ง
JSONObject对象相关的jar包依赖,一共有6个;还有maven环境下管理的jar包
maven的jar包的下载https://blog.csdn.net/swtesting/article/details/82732845 maven中jar包的下载 https://mvnrepository.com/ 阿里云jar包的查找
下载解压压缩包,把对应的jar包复制到对应的java安装目录下,重启eclipse,即可运行
安装Maven本地jar包
java运行依赖jar包
Springboot 打Jar包,Maven完美解决本地Jar包自动打入Springboot Jar包中
通过maven项目中的pom文件进行编译jar包。资源包包括maven3 和编译所需工具。
maven的jar包跟源码包 apache-maven-3.5.2-bin&apache;-maven-3.5.2-src
maven中jar包为下载完成last清理,更好的让maven管理jar包