| POM文件内容: |
<!--
COMMANDS
mvn assembly:single -> builds release
mvn javadoc:javadoc -> builds javadoc in target/site/apidocs
mvn cobertura:cobertura -> instrument, test, generate report
mvn findbugs:findbugs findbugs:gui -> open findbugs gui
TO MAKE RELEASES
(first check out into empty directory; mvn complains if untracked files)
(leave version in pom.xml unchanged; maven will update it for you)
mvn release:clean
mvn release:prepare
mvn release:perform
edit pom to 1.0
mvn assembly:single
upload to Google Code
delete directory
go to normal Duke directory
hg pull
hg up
then release to maven central:
https://docs.sonatype.org/display/Repository/Sonatype+OSS+Maven+Repository+Usage+Guide#SonatypeOSSMavenRepositoryUsageGuide-8a.ReleaseIt
TO PUBLISH SNAPSHOTS
-->
<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>no.priv.garshol.duke</groupId>
<artifactId>duke</artifactId>
<packaging>jar</packaging>
<version>1.1</version>
<name>Duke</name>
<description>Duke is a configurable record linkage engine.</description>
<url>http://code.google.com/p/duke/</url>
<dependencies>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-core</artifactId>
<version>4.0.0</version>
</dependency>
<!-- necessary to get KeywordAnalyzer and StandardAnalyzer -->
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-analyzers-common</artifactId>
<version>4.0.0</version>
</dependency>
<!-- necessary for spatial searches -->
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-spatial</artifactId>
<version>4.0.0</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<version>1.3.154</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.4</version>
<!-- servlet container provides it, so no need to include in .jar -->
<scope>provided</scope>
</dependency>
<!-- used for one optional server component -->
<dependency>
<groupId>org.codehaus.fabric3.api</groupId>
<artifactId>commonj</artifactId>
<version>1.1.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<!-- the next setting turns on variable substitution -->
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<!-- this plugin builds the duke.zip -->
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2.1</version>
<configuration>
<descriptors>
<descriptor>src/main/assembly/dep.xml</descriptor>
</descriptors>
</configuration>
</plugin>
<!-- this plugin configures the manifest file -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<archive>
<manifestEntries>
<Implementation-Title>Duke</Implementation-Title>
<Implementation-Version>${project.version}</Implementation-Version>
<Implementation-Build>${buildNumber}</Implementation-Build>
</manifestEntries>
</archive>
</configuration>
</plugin>
<!-- this plugin sets the build number in duke.properties -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<version>1.0</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>create</goal>
</goals>
</execution>
</executions>
<configuration>
<doCheck>false</doCheck>
<doUpdate>false</doUpdate>
<format>{0,number} ({1,date,yyyy-MM-dd})</format>
<items>
<item>buildNumber0</item>
<item>timestamp</item>
</items>
</configuration>
</plugin>
<!-- set java version to 1.6 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<!-- declaring specific version to avoid Maven 2.x problems -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.8.1</version>
</plugin>
<!-- this plugin is used to sign releases -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- generating sources.jar (for sonatype) -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- generating javadoc.jar (for sonatype) -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9</version>
<executions>
<execution>
<id>attach-javadoc</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<!-- this is necessary to get the buildnumber plugin to work -->
<scm>
<connection>scm:hg:https://duke.googlecode.com/hg/</connection>
<developerConnection>scm:hg:https://duke.googlecode.com/hg/</developerConnection>
<url>https://duke.googlecode.com/hg/</url>
</scm>
<!-- the below is included because Sonatype hosting requires it -->
<licenses>
<license>
<name>The Apache Software License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<id>larsga</id>
<name>Lars Marius Garshol</name>
<email>larsga@garshol.priv.no</email>
<url>http://www.garshol.priv.no</url>
<roles>
<role>architect</role>
<role>developer</role>
</roles>
<timezone>+1</timezone>
</developer>
</developers>
<parent>
<groupId>org.sonatype.oss</groupId>
<artifactId>oss-parent</artifactId>
<version>7</version>
</parent>
</project>
|