使用idea 引入第三方库,使用assembly插件打包包含第三方库的上线包


1.首先创建一个lib目录,将第三方jar包放到lib目录下。




2.选择菜单File -> Project Structure




3.打开Project Structure后,选择Modules -> Dependencies -> + -> JARS or directories...




4.选择你最开始创建的lib路径,点击OK,保存就好了。idea引入第三方库完成!





引入第三方库后,可以通过assembly插件将项目打包成上线包。


pom.xml中需要引入assembly插件


<build>
    <sourceDirectory>src/main/java</sourceDirectory>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
        </resource>
    </resources>
    <plugins>
        <!-- compiler插件参数设置,指定编码 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
                <encoding>utf-8</encoding>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.4</version>
            <configuration>
                <archive>
                    <addMavenDescriptor>false</addMavenDescriptor>
                    <index>true</index>
                    <manifest>
                        <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                        <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                    </manifest>
                    <manifestEntries>
                        <Implementation-Build></Implementation-Build>
                    </manifestEntries>
                </archive>
                <excludes>
                    <exlude>**/*.xml</exlude>
                </excludes>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.4</version>
            <configuration>
                <descriptor>src/main/assembly/assembly.xml</descriptor>
            </configuration>
            <executions>
                <execution>
                    <id>make-assembly</id>
                    <phase>package</phase>
                    <goals>
                        <goal>single</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

        <!--打包source code -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <executions>
                <execution>
                    <id>attach-sources</id>
                    <goals>
                        <goal>jar</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

    </plugins>
</build>


assembly.xml配置文件如下:

<assembly>
   <id>assembly</id>
   <formats>
      <format>zip</format>
      <!--<format>jar</format>-->
   </formats>
   <includeBaseDirectory>false</includeBaseDirectory>
   <fileSets>
      <!-- -->
      <fileSet>
         <directory>src/main/resources</directory>
         <outputDirectory>conf</outputDirectory>       
         <includes>
                <include>*.xml</include>
                <include>*.properties</include>       
             <include>**/*.xml</include>              
               <include>**/*.properties</include>
          </includes>

         <fileMode>0644</fileMode>
      </fileSet>
      <fileSet>
         <directory>src/main/lib</directory>
         <outputDirectory>lib</outputDirectory>
         <includes>
            <include>*.jar</include>
         </includes>
         <fileMode>0644</fileMode>
      </fileSet>
      <fileSet>
         <directory>src/main/assembly/bin</directory>
         <outputDirectory>bin</outputDirectory>
         <fileMode>0755</fileMode>
      </fileSet>
   </fileSets>
   <dependencySets>
      <dependencySet>
         <outputDirectory>lib</outputDirectory>
      </dependencySet>
   </dependencySets>
</assembly>


其中下面这一段配置就是将的第三方库打包到最后的上线包的lib目录中去。

      <fileSet>
         <directory>src/main/lib</directory>
         <outputDirectory>lib</outputDirectory>
         <includes>
            <include>*.jar</include>
         </includes>
         <fileMode>0644</fileMode>
      </fileSet>






猜你喜欢

转载自blog.csdn.net/daydayupzzc/article/details/69404667