<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>net.yacy</groupId> <artifactId>yacycore</artifactId> <version>1.69</version> <packaging>jar</packaging> <description>YaCy - a Peer to Peer Web Search Engine</description> <name>YaCy</name> <url>http://www.yacy.net</url> <issueManagement> <system>YaCy Bugtracker</system> <url>http://bugs.yacy.net</url> </issueManagement> <scm> <connection>scm:git:https://git.gitorious.org/yacy/rc1.git</connection> <url>https://gitorious.org/yacy</url> </scm> <licenses> <license> <name>GNU General Public License</name> <url>http://www.gnu.org/licenses/gpl-2.0</url> </license> </licenses> <developers> <developer> <name>Michael Peter Christen</name> </developer> </developers> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.6</maven.compiler.source> <maven.compiler.target>1.6</maven.compiler.target> <!-- the Solr version used in dependency section for all related dependencies --> <solr.version>4.6.1</solr.version> <!-- properties used for filtering yacyBuildProperties.java --> <REPL_DATE>${DSTAMP}</REPL_DATE> <REPL_RELEASE>yacy_v${project.version}_${DSTAMP}_${releaseNr}.tar.gz</REPL_RELEASE> <REPL_VERSION>${project.version}</REPL_VERSION> <REPL_REVISION_NR>${releaseNr}</REPL_REVISION_NR> <REPL_YACY_ROOT_DIR>.</REPL_YACY_ROOT_DIR> <REPL_PKGMANAGER>false</REPL_PKGMANAGER> <REPL_RESTARTCMD>/etc/init.d/yacy restart</REPL_RESTARTCMD> </properties> <build> <sourceDirectory>source</sourceDirectory> <testSourceDirectory>test</testSourceDirectory> <finalName>yacycore</finalName> <plugins> <!-- included to make htroot visible in IDE (Netbeans) --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.4</version> <configuration> <warSourceDirectory>htroot</warSourceDirectory> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <excludes> <!-- special exclude for compatibility with ant build script Note: the ant build uses a tricky source filtering to filter yacyBuildProperties.java for the Maven build the original source is used for filtering to produce generated-sources. For the ant build script the yacyBuildProperties.java must be at it's origianl location, thus it is excluded here to prevent Maven compile error "duplicate source" --> <exclude>net/yacy/peers/operation/*.java</exclude> </excludes> <source>${maven.compiler.source}</source> <target>${maven.compiler.target}</target> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <configuration> <archive> <manifest> <mainClass>net.yacy.yacy</mainClass> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> <addClasspath>true</addClasspath> </manifest> <manifestEntries> <Implementation-Build>${project.version}-${releaseNr}</Implementation-Build> </manifestEntries> </archive> </configuration> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>2.4</version> <configuration> <descriptors> <descriptor>assembly.xml</descriptor> </descriptors> <finalName>yacy_v${project.version}_${DSTAMP}_${releaseNr}</finalName> <outputDirectory>RELEASE</outputDirectory> <appendAssemblyId>false</appendAssemblyId> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> <!-- compile htroot --> <plugin> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <id>compile-htroot</id> <phase>compile</phase> <configuration> <tasks> <javac fork="true" srcdir="htroot/" excludes="processing/**" includeantruntime="false"> <classpath refid="maven.compile.classpath"/> <compilerarg value="-Xlint"/> </javac> </tasks> </configuration> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <version>2.9</version> <configuration> <reportOutputDirectory>api</reportOutputDirectory> <author>true</author> <version>true</version> <use>false</use> <encoding>iso-8859-1</encoding> <windowtitle>YaCy API Documentation</windowtitle> <excludes> htroot/*.java </excludes> </configuration> </plugin> <!-- custom plugin to add YaCy release number from local Git clone sets property <releaseNr>9nnn</releasNr> <DSTAMP>yyyyMMdd</DSTAMP> ! run sub project in libbuild to install the plugin ! --> <plugin> <groupId>net.yacy</groupId> <artifactId>maven-plugin-gitrevisionnumber</artifactId> <version>1.0</version> <executions> <execution> <phase>initialize</phase> <goals> <goal>create</goal> </goals> <!-- optional parameter to set/change the propertyName <configuration> <branchPropertyName>branch</branchPropertyName> <buildNumberPropertyName>releasNr</buildNumberPropertyName> <commitDatePropertyName>DSTAMP</commitDatePropertyName> </configuration> --> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>templating-maven-plugin</artifactId> <version>1.0-alpha-3</version> <executions> <execution> <id>filter-src</id> <goals> <goal>filter-sources</goal> </goals> <configuration> <!-- sourceDirectory should be a separate template directory like <sourceDirectory>${basedir}/libbuild/java-templates</sourceDirectory> to not duplicate the yacyBuildProperties.java we use the original files as sourceDirectory (to be compatible with the ant build.xml, but it should be changed in future for both build systems to use a templateDirectory, to eliminate the need of special compiler excludes --> <sourceDirectory>${basedir}/source/net/yacy/peers/operation</sourceDirectory> <outputDirectory>${project.build.directory}/generated-sources/java/net/yacy/peers/operation</outputDirectory> </configuration> </execution> </executions> </plugin> <!-- exec:exec goal to provide start YaCy by Maven (just to have it for cases were the ide not provides a run command) --> <!-- <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.2.1</version> <configuration> <classpathScope>runtime</classpathScope> <executable>java</executable> <workingDirectory>${basedir}</workingDirectory> <arguments> <argument>-Xms180m</argument> <argument>-Xmx800m</argument> <argument>-classpath</argument> <classpath/> <argument>net.yacy.yacy</argument> </arguments> </configuration> </plugin> --> <plugin> <!-- install jars not found in maven repository to local repository --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-install-plugin</artifactId> <version>2.4</version> <executions> <execution> <id>install-webcat-jar</id> <phase>clean</phase> <goals> <goal>install-file</goal> </goals> <configuration> <file>${basedir}/lib/webcat-0.1-swf.jar</file> <groupId>net.yacy.extlib</groupId> <artifactId>webcat</artifactId> <version>0.1</version> <packaging>jar</packaging> <generatePom>true</generatePom> </configuration> </execution> <execution> <id>install-J7Zip-jar</id> <phase>clean</phase> <goals> <goal>install-file</goal> </goals> <configuration> <file>${basedir}/lib/J7Zip-modified.jar</file> <groupId>net.yacy.extlib</groupId> <artifactId>J7Zip-modified</artifactId> <version>1.02</version> <packaging>jar</packaging> <generatePom>true</generatePom> </configuration> </execution> </executions> </plugin> </plugins> </build> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.7</version> <scope>test</scope> </dependency> <dependency> <groupId>javax.activation</groupId> <artifactId>activation</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>org.apache.james</groupId> <artifactId>apache-mime4j</artifactId> <version>0.6.1</version> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.8</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-compress</artifactId> <version>1.6</version> </dependency> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.3</version> </dependency> <dependency> <groupId>commons-jxpath</groupId> <artifactId>commons-jxpath</artifactId> <version>1.3</version> </dependency> <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> <version>2.6</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.1.3</version> </dependency> <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>fontbox</artifactId> <version>1.8.3</version> </dependency> <dependency> <groupId>org.apache.geronimo.specs</groupId> <artifactId>geronimo-stax-api_1.0_spec</artifactId> <version>1.0.1</version> </dependency> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>16.0.1</version> </dependency> <dependency> <groupId>org.htmlparser</groupId> <artifactId>htmllexer</artifactId> <version>2.1</version> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.3.3</version> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpcore</artifactId> <version>4.3.2</version> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpmime</artifactId> <version>4.3.3</version> </dependency> <dependency> <groupId>com.ibm.icu</groupId> <artifactId>icu4j</artifactId> <version>4.8.1.1</version> </dependency> <dependency> <groupId>org</groupId> <artifactId>jaudiotagger</artifactId> <version>2.0.3</version> </dependency> <dependency> <groupId>org.samba.jcifs</groupId> <artifactId>jcifs</artifactId> <version>1.3.3</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>1.7.2</version> </dependency> <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>jempbox</artifactId> <version>1.8.4</version> </dependency> <dependency> <groupId>com.jcraft</groupId> <artifactId>jsch</artifactId> <version>0.1.50</version> </dependency> <dependency> <groupId>com.googlecode.json-simple</groupId> <artifactId>json-simple</artifactId> <version>1.1.1</version> </dependency> <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.7.3</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> <version>1.7.2</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-analyzers-common</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-analyzers-phonetic</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-core</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-grouping</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-highlighter</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-memory</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-misc</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-queries</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-spatial</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>org.apache.lucene</groupId> <artifactId>lucene-suggest</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>com.drewnoakes</groupId> <artifactId>metadata-extractor</artifactId> <version>2.6.2</version> </dependency> <dependency> <groupId>oro</groupId> <artifactId>oro</artifactId> <version>2.0.8</version> </dependency> <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox</artifactId> <version>1.8.4</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.9</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-scratchpad</artifactId> <version>3.9</version> </dependency> <dependency> <groupId>sax</groupId> <artifactId>sax</artifactId> <version>2.0.1</version> </dependency> <dependency> <groupId>org.eclipse.jetty.orbit</groupId> <artifactId>javax.servlet</artifactId> <version>3.0.0.v201112011016</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.2</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-jdk14</artifactId> <version>1.7.2</version> </dependency> <dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-solrj</artifactId> <version>${solr.version}</version> </dependency> <dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-core</artifactId> <version>${solr.version}</version> <exclusions> <exclusion> <artifactId>slf4j-log4j12</artifactId> <groupId>org.slf4j</groupId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-server</artifactId> <version>8.1.14.v20131031</version> </dependency> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-servlet</artifactId> <version>8.1.14.v20131031</version> </dependency> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-servlets</artifactId> <version>8.1.14.v20131031</version> </dependency> <dependency> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-webapp</artifactId> <version>8.1.14.v20131031</version> </dependency> <dependency> <groupId>org.codehaus.woodstox</groupId> <artifactId>wstx-asl</artifactId> <version>3.2.9</version> </dependency> <dependency> <groupId>xerces</groupId> <artifactId>xercesImpl</artifactId> <version>2.7.1</version> </dependency> <!-- special setup for dependencies not found in maven repository to installed in local repository --> <dependency> <groupId>net.yacy.extlib</groupId> <artifactId>J7Zip-modified</artifactId> <version>1.02</version> </dependency> <dependency> <groupId>net.yacy.extlib</groupId> <artifactId>webcat</artifactId> <version>0.1</version> </dependency> </dependencies> </project>