IDEA项目打包几种方式

第一种,最常见的使用maven,

项目的pom文件中引入spring-boot-maven-plugin插件
<build>
        <finalName>文件名称</finalName>

        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>版本</version>
                <configuration>
                    <mainClass>
                        main主入口
                    </mainClass>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

这里配置完成之后,就可以自动打包了,这时候选择idea右侧的Maven,再点来Lifecycle,双击package,

java gui 项目idea打包 intellij java 项目打包_spring


这是其一,其二就是另外一个打包命令

java gui 项目idea打包 intellij java 项目打包_spring_02


同样双击即可,然后就是等待

这时候会自动进行打包,寻找相关依赖,直到看到

java gui 项目idea打包 intellij java 项目打包_java_03


这就说明打包成功了,然后找到项目,找到target文件夹,就可以看到已经打包好的jar包,

java gui 项目idea打包 intellij java 项目打包_jar_04


复制到任何地方使用cmd命令窗口就可以执行了,

这是最常见的打包方式,适用于绝大部分项目,
当然了,有时候并不是单个的boot项目,而是cloud分布式的项目,这时候多个模块存在互相依赖的情况,使用上述方法,可能再maven库里并没有相关的依赖的模块jar包,这时候就需要第二种打包方式了,

第二种,使用IDEA将项目打包,

现在由于使用的是cloud微服务,在子服务的项目中又构建了很多的子模块相互依赖,这时候打包,会去maven设置的maven库中查找相对应的包和xml文件,如果没有的话,是不会打包成功的,推荐这种打包模式,首先打开file—project-Structure界面,选择project

java gui 项目idea打包 intellij java 项目打包_jar_05


这里一般都默认好了,还是注意看一下,

然后选择modules,一般也是默认好的,没啥可改的

然后libraries,一般也是默认好的,没啥可改的

然后facets,一般也是默认好的,没啥可改的

然后,选择SDKs,看看你的JDK是否正确

然后就是主要的打包位置了,

Artifacts

java gui 项目idea打包 intellij java 项目打包_java gui 项目idea打包_06


首先,进来肯定是空的,这时我们需要进行新建jar,4部曲,

java gui 项目idea打包 intellij java 项目打包_java_07


会弹出一个对话框,这里选择我们要打包模块的module,然后选择main程序的主入口,一般都是识别了,自己选择一下,主要的是第三步,选择完主程序后,会默认到java文件夹,需要我们切换到resources文件夹,来生成MANIFEST.MF文件,点击确定后可以看到,

java gui 项目idea打包 intellij java 项目打包_java_08


已经自动生成了文件夹,

java gui 项目idea打包 intellij java 项目打包_java_09


新的artifacts就创建好了

1,这里就是我们创建好的jar

2,这里是jar的名称

3,应该是输出jar位置,自动生成,没改过,不太清楚作用还

4,现有的依赖关系,如果向我这种模块太多的,可以将右边有小三角的,统统右键加到左边来,以防万一,

java gui 项目idea打包 intellij java 项目打包_maven_10


然后点击apply,OK

这样,基本的JAR包设置就好了,马上执行打包,

点击 Build ----- Build Artifacts

java gui 项目idea打包 intellij java 项目打包_jar_11


弹出新的确认框,

java gui 项目idea打包 intellij java 项目打包_spring_12


点击Build,静静等待完成,

java gui 项目idea打包 intellij java 项目打包_maven_13


找到生成的classes,复制出去,然后找到里面的yml,已经我们定义的启动jar包,为了方便,我都是一样的字母开头,

java gui 项目idea打包 intellij java 项目打包_java_14


这之后就是跟上面的第一种方式一样了,cmd,命令启动我们新生成的jar包,

这种方式缺点就是打的包过于庞大,基本所有的jar都是单提出来使用,浪费硬盘空间,

这也是无奈之举,

好了,这就是我目前总结的两种打包方式,后期如果发现新的会继续更新,

再见