• IDEA打jar包


    一、打包方式介绍

    idea实际上只有一种打包方式,但是springboot自带打包插件。所以对于springboot的项目有两种打包方式,一种是idea自带打包方式,另一种springboot插件打包方式。在我们的项目中,推荐使用springboot的打包方式。

    两种打包也有不少差异,主要体现在两个方面。一是打包操作不一样。另一种是组包的结构目录不一样。下面介绍一下idea自带打包和springboot打包具体操作。

    二、idea自带打包(不推荐!坑很多!!!若是普通maven工程,请使用五中的方法进行打包)

    1、打开Idea的file->Project Structure,进入项目配置页面,如下图

     

    2、点击Artifacts,进入Artifacts配置页面,点击 + ,选择如下图的选项。

     

    3、进入Create JAR from Modules页面,按照如下图配置。

     

    4、删除打成包的依赖jar包

     

    5、创建jar包,回到IDEA,点击Build->Build Artifacts,选择build。

     

    6、jar包在out目录下

     坑:当jar包根目录下的文件过多时,jar包在运行时可能会报找不到主类!!!

    解决办法:将依赖的jar包放进文件夹中(减少根目录下的文件数),完美解决!!!

    三、springboot打包(推荐,只适用于springboot项目

    说明:如果要用springboot打包方式,在pom文件中不要加任务其他打包插件。只要留springboot打包插件,如下面,其他打包插件统统不要,如果加上其他打包插件会导致打的包不能正常使用,因为打包机制不一样,打出来的包不伦不类。第四节介绍两种打包后包的组织结构。

    1、点击Help->FindAction

    2、查找maven->点击MavenProject

     

    3、点击package

    4、找到jar包所在位置

     

    四、两种打包目录结构介绍

    1、 idea自带打包jar包目录结构。结构目录较多,但是一定有META-INF目录。

     

    2、 springboot打包jar包目录结构。springboot打出的包永远只有这三个层级目录。

    五、普通maven打包

    <build>
    <plugins>
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.4.1</version>

    <configuration>
    <!-- get all project dependencies -->
    <descriptorRefs>
    <descriptorRef>jar-with-dependencies</descriptorRef>
    </descriptorRefs>
    <!-- MainClass in mainfest make a executable jar -->
    <archive>
    <manifest>
    <addClasspath>true</addClasspath>
         //主函数入口
    <mainClass>service.ba.exchange.receiver.DataReceiver</mainClass>
    </manifest>
    </archive>
    </configuration>

    <executions>
    <execution>
    <id>make-assembly</id>
    <!-- bind to the packaging phase -->
    <phase>package</phase>
    <goals>
    <goal>single</goal>
    </goals>
    </execution>
    </executions>
    </plugin>
    </plugins>
    </build>
  • 相关阅读:
    201521123055 《Java程序设计》第14周学习总结
    201521123055 《Java程序设计》第13周学习总结
    201521123055 《Java程序设计》第12周学习总结
    201521123055 《Java程序设计》第11周学习总结
    个人作业5——软工个人总结
    个人作业4-alpha阶段个人总结
    个人作业3-案例分析
    软件工程网络15结对编程作业
    软工网络15个人阅读作业2
    软工网络15个人阅读作业1
  • 原文地址:https://www.cnblogs.com/runnerjack/p/9461211.html
Copyright © 2020-2023  润新知