【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

本次本篇使用的工具是Maven中的

maven-assembly-plugin

插件。

======================================================================================================

1.首先,需要新建一个maven项目,将单个或多个java文件拷贝到本项目中

例如,下面这个QR_Code.java文件

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

 

2.完善pom.xml文件,除了项目中依赖的jar的引用,还需要maven-assembly-plugin插件

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

=============================================================================================================================================

【解释一下,直接使用的可以跳过】:

》》(1)打包出来的jar包,是以

    <groupId>com.sxd.util</groupId>
    <artifactId>QR_Code</artifactId>
    <version>1.1-SNAPSHOT</version>

{artifactId}-{version}.jar命名的

》》(2)maven-assembly-plugin插件中

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

默认情况下,maven-assembly-plugin内置了几个可以用的assembly descriptor:

  • bin : 类似于默认打包,会将bin目录下的文件打到包中
  • jar-with-dependencies : 会将所有依赖都解压打包到生成物中【本次需求正好是将所有依赖也打包】
  • src :只将源码目录下的文件打包
  • project : 将整个project资源打包

》》(3)针对于maven-assembly-plugin插件中的

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

 ===================================================================================================================================================

3.使用IDEA的同志们,双击插件 即可执行打包指令

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

 

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

执行完整的语句如下:

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

 

 

4.执行完成之后,项目结构会发生变化

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

 

5.把jar包拷出来,放在一个位置,就可以上传到nexus上,放在maven私服里,给大家引用了【nexus私服搭建以及相关操作,查看http://www.cnblogs.com/sxdcgaq8080/p/7583767.html

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

当然,想更改jar的名字,也可以直接修改完成之后再进行如下操作

打开DOM窗口,执行如下命令

mvn deploy:deploy-file -DgroupId=sxd.jar -DartifactId=QR_Code -Dversion=1.1 -Dpackaging=jar -Dfile=G:\test\QR_Code-1.1-SNAPSHOT.jar -Durl=http://localhost:8081/repository/myself_hosted/ -DrepositoryId=myself_hosted

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

 

在http://localhost:8081/ 访问nexus

查询就可查看到

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

 

这样在项目中引用如下:

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用 【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用
<!--QR_Code二维码使用工具包-->
        <dependency>
            <groupId>sxd.jar</groupId>
            <artifactId>QR_Code</artifactId>
            <version>1.1</version>
        </dependency>
【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用 【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

 

 6.最后,就可以把这个单独创建的项目 删除就好了

 

 

再来补充一篇是idea直接用来打包的

 

IDEA环境配置——把类封装为jar工具包以供他人调用

记录一下

目录

打包

调用


打包

File -> Project Structure

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

然后点左边的Artifacts ,点旁边的绿色加号

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

新建一个空的jar

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

随便起个名字,点下图我圈出来的那个绿色的加号

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

然后选module output,点开把你要打包的module加进去

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

然后点ok

开始打包:Build->BuildArtifacts->你刚刚加的jar包名字-->build

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用        【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

打包成功的文件在你的项目->classes->artifacts->你刚才起的jar包名 下

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

调用

还是找到File->Project Structure

 在Modules模块:选中你要导入包的modules,然后在右边的Dependencies选项里面点右边的加号

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

选第一个jars,找到你刚才打的jar包,然后引入jar包

【Maven jar】打包单个或多个文件,有依赖jar包的将包一起打包成一个jar包供别的项目引用

点ok

就ok了。


 文章引用地址:https://www.cnblogs.com/cxy2020/p/13541678.html

上一篇:DML语句 UPDATE更新记录


下一篇:DML数据操作语句和基本的DQL语句、python操作数据库