zoukankan      html  css  js  c++  java
  • maven-assembly-plugin 打包简单案例

    简单项目
    1. maven  netty  lomback 
     
    包含项目依赖
    <dependencies>
    <dependency>
    <groupId>io.netty</groupId>
    <artifactId>netty-all</artifactId>
    <version>4.1.9.Final</version>
    </dependency>
    <dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.16.18</version>
    <scope>provided</scope>
    </dependency>
    </dependencies>
     
    2. 几个打包插件使用
     
    依赖管理、依赖剔除处理、启动函数处理

     

    <build>
    <plugins>
    <plugin>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
    <source>1.6</source>
    <target>1.6</target>
    <encoding>UTF-8</encoding>
    <compilerArguments>
    <extdirs>lib/</extdirs>
    </compilerArguments>
    </configuration>
    </plugin>
    <plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <executions>
    <execution>
    <id>make-assembly</id>
    <phase>package</phase>
    <goals>
    <goal>single</goal>
    </goals>
    </execution>
    </executions>
    <configuration>
    <archive>
    <manifest>
    <mainClass>com.dalong.netty.MyMain</mainClass>
    </manifest>
    </archive>
    <!--<descriptorRefs><descriptorRef>jar-with-dependencies</descriptorRef>
    </descriptorRefs>-->
    <descriptors><!--描述文件路径-->
    <descriptor>src/main/assembly/assembly.xml</descriptor>
    </descriptors>
    </configuration>
    </plugin>
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <configuration>
    <archive>
    <manifest>
    <addClasspath>true</addClasspath>
    <classpathPrefix>lib/</classpathPrefix>
    <mainClass>com.dalong.netty.MyMain</mainClass>
    </manifest>
    </archive>
    <excludes>
    <exclude>**/*.conf</exclude>
    </excludes>
    </configuration>
    </plugin>
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <executions>
    <execution>
    <id>copy-dependencies</id>
    <phase>prepare-package</phase>
    <goals>
    <goal>copy-dependencies</goal>
    </goals>
    <configuration>
    <outputDirectory>${project.build.directory}/lib</outputDirectory>
    <overWriteReleases>false</overWriteReleases>
    <overWriteSnapshots>false</overWriteSnapshots>
    <overWriteIfNewer>true</overWriteIfNewer>
    <excludeScope>provided</excludeScope>
    </configuration>
    </execution>
    </executions>
    </plugin>
    <plugin>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok-maven-plugin</artifactId>
    <version>1.16.18.0</version>
    <executions>
    <execution>
    <phase>generate-sources</phase>
    <goals>
    <goal>delombok</goal>
    </goals>
    </execution>
    </executions>
    </plugin>
    </plugins>
    </build>
    

      

    3.  assembly.xml 文件定义
     
    文件别名、配置拷贝
    <assembly
    xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
    <id>mydemo</id>
    <includeBaseDirectory>true</includeBaseDirectory>
    <formats>
    <format>zip</format>
    </formats>
    <fileSets>
    <fileSet>
    <directory>${project.basedir}srcmain
    esources</directory>
    <outputDirectory>conf/</outputDirectory>
    </fileSet>
    <fileSet>
    <directory>${project.basedir}	argetlib</directory>
    <outputDirectory>lib/</outputDirectory>
    </fileSet>
    </fileSets>
    <files>
    <file>
    <outputDirectory>/</outputDirectory>
    <source>${project.basedir}	argetwebsocket-server-0.0.1-SNAPSHOT.jar</source>
    <destName>websocket-server.jar</destName>
    </file>
    </files>
    </assembly>

     

    4. 打包构建
     
    mvn clean compile package
    

       

    5. 参考说明
     
     
  • 相关阅读:
    机器学习入门-文本数据-使用聚类增加文本的标签属性
    机器学习入门-文本特征-使用LDA主题模型构造标签 1.LatentDirichletAllocation(LDA用于构建主题模型) 2.LDA.components(输出各个词向量的权重值)
    机器学习入门-文本特征-word2vec词向量模型 1.word2vec(进行word2vec映射编码)2.model.wv['sky']输出这个词的向量映射 3.model.wv.index2vec(输出经过映射的词名称)
    机器学习入门-数值特征-对数据进行log变化
    python中datetime.strptime(),strftime()的应用
    css中的','、'>'、'+'、'~'
    js中const,var,let区别
    css的#和.的区别
    js实现拖放
    [Usaco2005]Part Acquisition
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/7206017.html
Copyright © 2011-2022 走看看