xxx
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>net.oschina.dajiangnan</groupId>
<artifactId>xxx</artifactId>
<version>1.0.0</version>
</dependency><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">
<name>xxx</name>
<description>xxx is a dajiangnan's xxx</description>
<url>http://www.xxx.org/</url>
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
</license>
</licenses>
<developers>
<developer>
<name>zhangjiangnan</name>
<email>13401190417@139.com</email>
</developer>
</developers>
<scm>
<connection>scm:git:git@git.oschina.net:dajiangnan/xxx.git</connection>
<developerConnection>scm:git:git@git.oschina.net:dajiangnan/xxx.git</developerConnection>
<url>git@git.oschina.net:dajiangnan/xxx.git</url>
</scm>
<properties>
<version>1.0.0</version>
<MainClass>net.oschina.dajiangnan.xxx.boot.Main</MainClass>
<springframework.version>4.1.7.RELEASE</springframework.version>
<log4j.version>1.2.17</log4j.version>
<commonUtil.version>1.0.10</commonUtil.version>
<spring-data-redis.version>1.6.0.RELEASE</spring-data-redis.version>
<jedis.version>2.4.2</jedis.version>
<quartz.version>2.2.1</quartz.version>
<slf4j-log4j12.version>1.7.2</slf4j-log4j12.version>
<ehcache.version>2.8.3</ehcache.version>
<commons-io.version>2.4</commons-io.version>
</properties>
<modelVersion>4.0.0</modelVersion>
<groupId>net.oschina.dajiangnan</groupId>
<artifactId>xxx</artifactId>
<packaging>jar</packaging>
<version>${version}</version>
<!--
处理jar包冲突
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<exclusions>
<exclusion>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
</exclusion>
<exclusion>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</exclusion>
</exclusions>
使用1.5版本
<classifier>jdk15</classifier>
</dependency>
-->
<!--
安装jar包到本地(可能安装到了默认的仓库,需要拷贝到配置的仓库)
mvn install:install-file -DgroupId=com.huawei -DartifactId=idm -Dversion=1.0.0 -Dfile=idmclient.jar -Dpackaging=jar -DgeneratePom=true -->
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>${log4j.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>net.oschina.dajiangnan</groupId>
<artifactId>commonUtil</artifactId>
<version>${commonUtil.version}</version>
</dependency>
<!-- redis -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-redis</artifactId>
<version>${spring-data-redis.version}</version>
</dependency>
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>${jedis.version}</version>
</dependency>
<!-- quartz -->
<dependency>
<groupId>org.quartz-scheduler</groupId>
<artifactId>quartz</artifactId>
<version>${quartz.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${slf4j-log4j12.version}</version>
</dependency>
<!-- ehcache -->
<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache</artifactId>
<version>${ehcache.version}</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>${commons-io.version}</version>
</dependency>
</dependencies>
<build>
<sourceDirectory>src/main/java</sourceDirectory>
<resources>
<resource>
<directory>src/main/resource</directory>
<!--资源文件不编译-->
<filtering>false</filtering>
<targetPath>${project.build.directory}/classes</targetPath>
</resource>
</resources>
<plugins>
<!-- 设置源文件编码方式 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.1</version>
<configuration>
<defaultLibBundleDir>lib</defaultLibBundleDir>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<!-- 打包jar文件时,配置manifest文件,加入lib包的jar依赖 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.5</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix></classpathPrefix>
<mainClass>${MainClass}</mainClass>
<useUniqueVersions>false</useUniqueVersions>
</manifest>
<!-- 添加classpath缺少的内容-->
<manifestEntries>
<Class-Path>../cfg/</Class-Path>
</manifestEntries>
</archive>
<!--不打包-->
<excludes>
<exclude>log4j.properties</exclude>
<exclude>filters/*</exclude>
</excludes>
</configuration>
</plugin>
<!-- 资源文件的编码问题 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<!-- 编译打包时跳过单元测试-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.17</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<!-- 拷贝依赖的jar包到lib目录 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>
${project.build.directory}/lib
</outputDirectory>
<excludeScope>provided</excludeScope>
</configuration>
</execution>
</executions>
</plugin>
<!-- 源码打包-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- javadoc-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- GPG签名
1. 下载Gpg4win-Vanilla版本,https://www.gpg4win.org/download.html
2. 查看安装成功 gpg --version
3. 生成秘钥对 gpg --gen-key
此时需要输入姓名、邮箱等字段,其它字段可使用默认值,
此外,还需要输入一个 Passphase,相当于一个密钥库的密码,后面会用到。
4. 查看公钥 gpg --list-keys
5. 将公钥发布到 PGP 密钥服务器
gpg --keyserver hkp://pool.sks-keyservers.net --send-keys xxxxxxx
6. 查询公钥是否发布成功
gpg --keyserver hkp://pool.sks-keyservers.net --recv-keys xxxxxxx-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- jar包启动类-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.5</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix></classpathPrefix>
<mainClass>${MainClass}</mainClass>
<!-- 解决snapshop问题 -->
<useUniqueVersions>false</useUniqueVersions>
</manifest>
</archive>
</configuration>
</plugin>
<!-- All In One
<plugin>
<groupId>com.jolira</groupId>
<artifactId>onejar-maven-plugin</artifactId>
<version>1.4.4</version>
<executions>
<execution>
<configuration>
<attachToBuild>true</attachToBuild>
<classifier>onejar</classifier>
</configuration>
<goals>
<goal>one-jar</goal>
</goals>
</execution>
</executions>
</plugin>-->
<!--assembly-->
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4</version>
<configuration>
<descriptors>
<descriptor>src/main/assembly/package.xml</descriptor>
</descriptors>
<!-- jar-with-dependencies是assembly预先写好的一个,组装描述引用(assembly descriptor)
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
-->
</configuration>
</plugin>
</plugins>
</build>
<!--
setting.xml中
sonatype账号的用户名与密码来配置,id对应snapshotRepository的id
<settings>
...
<servers>
<server>
<id>oss</id>
<username>用户名</username>
<password>密码</password>
</server>
</servers>
...
</settings>
-->
<!--
中央仓库上传
mvn clean deploy -Dgpg.passphrase=xxxxxx
官网提交
https://oss.sonatype.org/ -> Staging Repositories -> close -> Release
官网查看
http://repo1.maven.org/maven2/
-->
<distributionManagement>
<snapshotRepository>
<id>oss</id>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</snapshotRepository>
<repository>
<id>oss</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
<!-- assembly:assembly -Denv=prod -->
<profiles>
<profile>
<id>dev</id>
<build>
<filters>
<filter>src/main/resource/filters/dev.properties</filter>
</filters>
<resources>
<resource>
<directory>src/main/resource</directory>
<filtering>true</filtering>
<includes>
<include>config/properties/xxx.runtime</include>
</includes>
</resource>
</resources>
</build>
<activation>
<activeByDefault>true</activeByDefault>
<property>
<name>env</name>
<value>dev</value>
</property>
</activation>
</profile>
<profile>
<id>qa</id>
<build>
<filters>
<filter>src/main/resource/filters/qa.properties</filter>
</filters>
<resources>
<resource>
<directory>src/main/resource</directory>
<filtering>true</filtering>
<includes>
<include>config/properties/xxx.runtime</include>
</includes>
</resource>
</resources>
</build>
<activation>
<property>
<name>env</name>
<value>qa</value>
</property>
</activation>
</profile>
<profile>
<id>prod</id>
<build>
<filters>
<filter>src/main/resource/filters/prod.properties</filter>
</filters>
<resources>
<resource>
<directory>src/main/resource</directory>
<filtering>true</filtering>
<includes>
<include>config/properties/xxx.runtime</include>
</includes>
</resource>
</resources>
</build>
<activation>
<property>
<name>env</name>
<value>prod</value>
</property>
</activation>
</profile>
</profiles>
</project>