mvn 打包jar

打包jar程序

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>test.server</groupId>
  <artifactId>test.server</artifactId>
  <version>0.0.2-SNAPSHOT</version>  
  <packaging>jar</packaging>
  <name>test.server</name>
  <description/>
  <properties>
    <webVersion>2.5</webVersion>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	<docker.repostory>10.0.2.4:5000</docker.repostory>
	<docker.dockerhost>http://10.0.2.4:5000</docker.dockerhost>
	<!--湖南智远数通-->
	<docker.registry.name>hnzyst</docker.registry.name>
	<docker.artifactId>fjdcgl.server</docker.artifactId>
	<!-- 指定docker image 的版本号 -->
	<docker.version>0.0.1</docker.version>
	<docker.active>test</docker.active>
  </properties>
   
<build>
  <!--<sourceDirectory>${basedir}/src</sourceDirectory>-->
  <resources>
  <resource>  
        <directory>src</directory>  
        <includes>  
            <include>**/*.properties</include>  
            <include>**/*.xml</include>  
        </includes>  
        <filtering>true</filtering>  
    </resource> 
 </resources>	
<plugins>
  
    <plugin>     
        <groupId>org.codehaus.mojo</groupId>     
        <artifactId>build-helper-maven-plugin</artifactId>     
        <version>1.5</version>     
        <executions>     
          <execution>     
            <id>add-source</id>     
            <phase>generate-sources</phase>     
            <goals>     
              <goal>add-source</goal>     
            </goals>     
            <configuration>     
              <sources>     
                <source>${basedir}/src</source> 
				 
              </sources>     
            </configuration>     
          </execution>     
        </executions>     
      </plugin>  
   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.4.3</version>
    <configuration>
        <encoding>${project.build.sourceEncoding}</encoding>
    </configuration> 
	<executions>  
    <!--启动配置文件拷贝--> 
		<execution>   
		  <id>copy-server-xml</id>    
		  <phase>package</phase>    
		  <goals>  
			<goal>copy-resources</goal>  
		  </goals>    
		  <configuration>   
			<encoding>UTF-8</encoding>    
			<outputDirectory>${project.build.directory}</outputDirectory>    
			<resources>   
			  <resource>  
				<directory>${basedir}</directory>
                        <includes>
                            <include>create.xml </include>
							<include>fjdcgl_processors.xml </include>
							<include>processors.xml </include>
							<include>fjdcgl_processors.xml </include>
							<include>server.xml </include>
							<include>user_model_processors.xml </include>
							<include>system_configuration.xml </include> 
                        </includes>
                        <filtering>true</filtering> 
			  </resource>   
			</resources>   
		  </configuration>   
		</execution> 
		
<execution>   
		  <id>copy-conf-um</id>    
		  <phase>package</phase>    
		  <goals>  
			<goal>copy-resources</goal>  
		  </goals>    
		  <configuration>   
			<encoding>UTF-8</encoding>    
			<outputDirectory>${project.build.directory}/conf/create</outputDirectory>    
			<resources>   
			  <resource>  
				<directory>${basedir}/conf/create</directory>  
			  </resource>   
			</resources>   
		  </configuration>   
		</execution>
		</executions>
	</plugin>
 <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.4.3</version>
    <configuration>
        <encoding>${project.build.sourceEncoding}</encoding>
    </configuration> 
	<executions>  
	<!--配置文件拷贝-->
		<execution>   
		  <id>copy-conf</id>    
		  <phase>package</phase>    
		  <goals>  
			<goal>copy-resources</goal>  
		  </goals>    
		  <configuration>   
			<encoding>UTF-8</encoding>    
			<outputDirectory>${project.build.directory}</outputDirectory>  
			  <resources>  
			  <resource>
                        <directory>${basedir}/docker/${docker.active}</directory> 
						<includes>
                            <include>db.xml</include>
							<include>processors.xml</include>
                        </includes>
                        <filtering>true</filtering> 						
                </resource>			 
			</resources>   
		  </configuration>   
		</execution> 
		   
		 <!--jar包拷贝--> 
		<execution>   
		  <id>copy-lib</id>    
		  <phase>package</phase>    
		  <goals>  
			<goal>copy-resources</goal>  
		  </goals>    
		  <configuration>   
			<encoding>UTF-8</encoding>    
			<outputDirectory>${project.build.directory}/libs</outputDirectory>    
			<resources>   
			  <resource>  
				<directory>${basedir}/libs</directory>  
			  </resource>   
			</resources>   
		  </configuration>   
		</execution> 
		 
		 
		</executions>
	</plugin>
  
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.3.2</version>
        <configuration>
          <source>1.6</source>
          <target>1.6</target>
          <encoding>UTF-8</encoding> 
		      <compilerArguments>            
				<extdirs>libs</extdirs> 
          </compilerArguments>   
        </configuration>
      </plugin>
	   
	 
 
	  <plugin>
             <groupId>org.apache.maven.plugins</groupId>
             <artifactId>maven-jar-plugin</artifactId>
             <version>2.6</version> 
                <configuration>
                    <archive>
					 <addMavenDescriptor>false</addMavenDescriptor>  
                        <manifest>
							<addClasspath>true</addClasspath> 
                            <classpathPrefix>libs/</classpathPrefix>
                            <mainClass>com.aj.frame.fjdcgl.daemon.testDaemon</mainClass>
                        </manifest>
						<manifestEntries>
							<Class-Path>libs/</Class-Path>
						</manifestEntries>
                    </archive> 
					<!--<classesDirectory>
						libs/
					</classesDirectory>-->
                </configuration>
            </plugin>
 
      <!-- 打包Docker -->
        <plugin>
            <groupId>com.spotify</groupId>
            <artifactId>docker-maven-plugin</artifactId>
            <version>0.4.13</version>
            <executions>
                <execution>
                    <id>build-image</id>
                    <phase>package</phase>
                    <goals>
                        <goal>build</goal>
                    </goals>
                </execution>
                <execution>
                    <id>tag-image</id>
                    <phase>package</phase>
                    <goals>
                        <goal>tag</goal>
                    </goals>
                     <configuration>
                        <image> ${docker.repostory}/${docker.registry.name}/${docker.active}/${docker.artifactId}:${docker.version}</image> 
                        <newName>${docker.repostory}/${docker.registry.name}/${docker.active}/${docker.artifactId}:${docker.version}</newName> 
                    </configuration>
                </execution>
                 <execution>
                    <id>push-image</id>
                    <phase>deploy</phase>
                    <goals>
                        <goal>push</goal>
                    </goals>
                    <configuration>
                        <imageName>${docker.repostory}/${docker.registry.name}/${docker.active}/${docker.artifactId}:${docker.version}</imageName>
                    </configuration>
                </execution>   
            </executions>
            <configuration>
                <serverId>docker-local</serverId>
                <registryUrl>${docker.dockerhost}</registryUrl>
                <pushImage>true</pushImage>
                <dockerDirectory>${project.basedir}/docker/build</dockerDirectory>
				<!-- jar版本号,没启作用-->
				<buildArgs>
					<version>${docker.version}</version>
				</buildArgs>
                <imageName>${docker.repostory}/${docker.registry.name}/${docker.active}/${docker.artifactId}</imageName>
                <!-- docker版本号-->
				<imageTags>
                    <imageTag>${docker.version}</imageTag>
                </imageTags>
                <resources>
                  <resource>
                    <targetPath>/</targetPath>
                    <directory>${basedir}/target/</directory>
                    <include>${docker.artifactId}.jar</include>
					<include>*.xml</include>
					<include>libs/*</include> 
					<include>conf/**/*</include> 
                  </resource>
                </resources>
            </configuration>
        </plugin>

    </plugins>
     <finalName>${docker.artifactId}</finalName>
  </build>
</project>

运行打包

mvn clean install -Ddocker.version=1.0.0. -Ddocker.active=test

启动命名

#!/bin/bash
docker network create mynet
docker rm -f test.server
docker run -d -p 10012:10012  --network mynet   --network-alias test.server --name test.server  10.0.2.4:5000/hnzyst/test/test.server

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值