<?xml version="1.0" encoding="UTF-8"?> <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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.codelibs.fess</groupId> <artifactId>fess</artifactId> <version>10.0.0-SNAPSHOT</version> <packaging>war</packaging> <name>Fess</name> <description>Fess is Full tExt Search System.</description> <url>http://fess.codelibs.org/</url> <inceptionYear>2009</inceptionYear> <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> <organization> <name>CodeLibs</name> <url>http://www.codelibs.org/</url> </organization> <issueManagement> <url>https://github.com/codelibs/fess/issues</url> </issueManagement> <scm> <connection>scm:git:git@github.com:codelibs/fess.git</connection> <developerConnection>scm:git:git@github.com:codelibs/fess.git</developerConnection> <url>https://github.com/codelibs/fess</url> </scm> <parent> <groupId>org.sonatype.oss</groupId> <artifactId>oss-parent</artifactId> <version>9</version> </parent> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <!-- Main Framework --> <dbflute.version>1.1.0-sp9</dbflute.version> <lastaflute.version>0.7.0-RC1</lastaflute.version> <lasta.taglib.version>0.6.6-RC2</lasta.taglib.version> <servlet.version>3.1.0</servlet.version> <jsp.version>2.3.1</jsp.version> <mailflute.version>0.4.3-RC2</mailflute.version> <!-- Partner Library --> <slf4j.version>1.7.12</slf4j.version> <logback.version>1.1.3</logback.version> <!-- GoodNeighbor Library --> <commons.fileupload.version>1.3.1</commons.fileupload.version> <!-- Testing --> <junit.version>4.12</junit.version> <utflute.version>0.5.2</utflute.version> <!-- Crawler --> <crawler.version>1.0.0</crawler.version> <!-- Suggest --> <suggest.version>2.1.0-SNAPSHOT</suggest.version> <!-- Elasticsearch --> <elasticsearch.version>2.1.0</elasticsearch.version> <cluster.runner.version>2.1.0.0</cluster.runner.version> <!-- Tomcat --> <tomcat.boot.version>0.4.1-RC1</tomcat.boot.version> <!-- TODO: RPM build --> <packaging.fess.home.dir>/usr/share/fess</packaging.fess.home.dir> <packaging.fess.app.dir>${packaging.fess.home.dir}/app</packaging.fess.app.dir> <packaging.fess.bin.dir>${packaging.fess.home.dir}/bin</packaging.fess.bin.dir> <packaging.fess.conf.dir>/etc/fess</packaging.fess.conf.dir> <packaging.fess.lib.dir>${packaging.fess.home.dir}/lib</packaging.fess.lib.dir> <packaging.fess.log.dir>/var/log/fess</packaging.fess.log.dir> <packaging.fess.temp.dir>/var/tmp/fess</packaging.fess.temp.dir> <packaging.fess.user>fess</packaging.fess.user> <packaging.fess.group>fess</packaging.fess.group> <packaging.fess.pid.dir>/var/run/fess</packaging.fess.pid.dir> <packaging.fess.systemd.dir>/usr/lib/systemd/system</packaging.fess.systemd.dir> <packaging.fess.systemd.sysctl.dir>/usr/lib/sysctl.d</packaging.fess.systemd.sysctl.dir> <packaging.fess.tmpfilesd.dir>/usr/lib/tmpfiles.d</packaging.fess.tmpfilesd.dir> </properties> <build> <finalName>fess</finalName> <resources> <resource> <directory>src/main/resources</directory> </resource> </resources> <!-- This file contains all the common properties used to build the different packages (tar.gz, deb, rpm) using Maven resources plugin --> <filters> <filter>src/packaging/common/packaging.properties</filter> </filters> <pluginManagement> <plugins> <plugin> <groupId>org.eclipse.m2e</groupId> <artifactId>lifecycle-mapping</artifactId> <version>1.0.0</version> <configuration> <lifecycleMappingMetadata> <pluginExecutions> <pluginExecution> <pluginExecutionFilter> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <versionRange>[0,)</versionRange> <goals> <goal>unpack-dependencies</goal> </goals> </pluginExecutionFilter> <action> <ignore /> <!-- to avoid warning --> </action> </pluginExecution> </pluginExecutions> </lifecycleMappingMetadata> </configuration> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.3</version> <configuration> <source>${maven.compiler.source}</source> <target>${maven.compiler.target}</target> <encoding>UTF-8</encoding> </configuration> </plugin> <plugin> <artifactId>maven-source-plugin</artifactId> <version>2.4</version> <executions> <execution> <id>source-jar</id> <phase>package</phase> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-war-plugin</artifactId> <version>2.6</version> <configuration> <webResources> <resource> <directory>${project.build.directory}/${project.build.finalName}-compress</directory> </resource> </webResources> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>2.10</version> <executions> <execution> <id>unpack-provided</id> <phase>generate-resources</phase> <goals> <goal>unpack-dependencies</goal> </goals> <configuration> <includeScope>provided</includeScope> <outputDirectory>${project.build.directory}/tomcat-lib</outputDirectory> <includes>**/*</includes> <overWriteReleases>true</overWriteReleases> <overWriteSnapshots>true</overWriteSnapshots> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-javadoc-plugin</artifactId> <version>2.10.3</version> <configuration> <encoding>UTF-8</encoding> <docencoding>UTF-8</docencoding> <charset>UTF-8</charset> </configuration> </plugin> <plugin> <groupId>com.mycila</groupId> <artifactId>license-maven-plugin</artifactId> <version>2.11</version> <configuration> <header>http://www.codelibs.org/assets/license/header.txt</header> <properties> <year>2015</year> </properties> <includes> <include>src/**/*.java</include> </includes> <encoding>UTF-8</encoding> <headerDefinitions> <headerDefinition>http://www.codelibs.org/assets/license/header-definition-2.xml</headerDefinition> </headerDefinitions> </configuration> <executions> <execution> <goals> <goal>check</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>net.revelc.code</groupId> <artifactId>formatter-maven-plugin</artifactId> <version>0.5.2</version> <executions> <execution> <goals> <goal>format</goal> </goals> </execution> </executions> <configuration> <configFile>${basedir}/src/config/eclipse/formatter/java.xml</configFile> </configuration> </plugin> <plugin> <groupId>net.alchim31.maven</groupId> <artifactId>yuicompressor-maven-plugin</artifactId> <version>1.5.1</version> <executions> <execution> <phase>compile</phase> <goals> <goal>compress</goal> <goal>jslint</goal> </goals> </execution> </executions> <configuration> <nosuffix>true</nosuffix> <webappDirectory>${project.build.directory}/${project.build.finalName}-compress</webappDirectory> <excludes> <exclude>**/*min.js</exclude> </excludes> </configuration> </plugin> <plugin> <groupId>org.dbflute</groupId> <artifactId>dbflute-maven-plugin</artifactId> <version>1.1.0</version> <configuration> <dbfluteVersion>${dbflute.version}</dbfluteVersion> <packageBase>org.codelibs.fess.dbflute</packageBase> <clientProject>fess</clientProject> <dbfluteClientDir>${basedir}/dbflute_fess</dbfluteClientDir> </configuration> </plugin> <plugin> <artifactId>maven-antrun-plugin</artifactId> <version>1.8</version> <dependencies> <dependency> <groupId>org.apache.ant</groupId> <artifactId>ant</artifactId> <version>1.9.6</version> </dependency> </dependencies> <configuration> <tasks> <ant antfile="${basedir}/plugin.xml" target="install.plugins"> <property name="with.fess" value="true" /> </ant> </tasks> </configuration> <goals> <goal>run</goal> </goals> </plugin> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>2.6</version> <executions> <execution> <id>copy-resources-rpm</id> <phase>prepare-package</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/generated-packaging/rpm/</outputDirectory> <filters> <filter>${project.basedir}/src/packaging/common/packaging.properties</filter> <filter>${project.basedir}/src/packaging/rpm/packaging.properties</filter> </filters> <resources> <resource> <directory>src/packaging/common/</directory> <filtering>true</filtering> <includes> <include>**/*</include> </includes> <excludes> <exclude>packaging.properties</exclude> </excludes> </resource> <resource> <directory>src/packaging/rpm/</directory> <filtering>true</filtering> <includes> <include>**/*</include> </includes> <excludes> <exclude>packaging.properties</exclude> </excludes> </resource> <resource> <directory>${project.basedir}</directory> <filtering>true</filtering> <includes> <include>bin/fess</include> <include>bin/fess.in.sh</include> </includes> </resource> </resources> </configuration> </execution> </executions> </plugin> <!-- zip, tarball --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>2.6</version> <configuration> <finalName>${project.artifactId}-${project.version}</finalName> <appendAssemblyId>false</appendAssemblyId> <outputDirectory>${project.build.directory}/releases/</outputDirectory> <tarLongFileMode>gnu</tarLongFileMode> <descriptors> <descriptor>${basedir}/src/main/assemblies/targz-bin.xml</descriptor> <descriptor>${basedir}/src/main/assemblies/zip-bin.xml</descriptor> </descriptors> </configuration> <executions> <execution> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> <!-- rpm --> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>rpm-maven-plugin</artifactId> <version>2.1.4</version> <configuration> <distribution>Fess</distribution> <group>Application/Internet</group> <packager>CodeLibs</packager> <prefix>/usr</prefix> <needarch>noarch</needarch> <targetOS>linux</targetOS> <changelogFile>src/changelog</changelogFile> <defineStatements> <defineStatement>_unpackaged_files_terminate_build 0</defineStatement> <defineStatement>_binaries_in_noarch_packages_terminate_build 0</defineStatement> </defineStatements> <defaultFilemode>644</defaultFilemode> <defaultDirmode>755</defaultDirmode> <defaultUsername>${packaging.fess.user}</defaultUsername> <defaultGroupname>${packaging.fess.group}</defaultGroupname> <!-- <keyname>${gpg.key}</keyname> <keypath>${gpg.keyring}</keypath> <keyPassphrase> <passphrase>${gpg.passphrase}</passphrase> </keyPassphrase> --> <mappings> <!-- fess home --> <mapping> <directory>${packaging.fess.home.dir}</directory> <directoryIncluded>true</directoryIncluded> <recurseDirectories>true</recurseDirectories> </mapping> <!-- app --> <mapping> <directory>${packaging.fess.app.dir}</directory> <filemode>755</filemode> <sources> <source> <location>${project.build.directory}/fess</location> <excludes> <exclude>**/fess_config.properties</exclude> <exclude>**/fess_env*.properties</exclude> </excludes> </source> </sources> </mapping> <!-- lib --> <mapping> <directory>${packaging.fess.lib.dir}/classes</directory> <sources> <source> <location>${project.build.directory}/tomcat-lib</location> </source> </sources> </mapping> <mapping> <directory>${packaging.fess.lib.dir}/classes/org/codelibs/fess</directory> <sources> <source> <location>${project.build.directory}/fess/WEB-INF/classes/org/codelibs/fess</location> <includes> <include>FessBoot**</include> </includes> </source> </sources> </mapping> <mapping> <directory>${packaging.fess.conf.dir}</directory> <sources> <source> <location>${project.basedir}/src/main/assemblies/files</location> <includes> <include>logging.properties</include> <include>tomcat_config.properties</include> </includes> </source> <source> <location>${project.build.directory}/fess/WEB-INF/classes</location> <includes> <include>fess_config.properties</include> <include>fess_env_web.properties</include> <include>fess_env_crawler.properties</include> <include>fess_env_suggest.properties</include> </includes> </source> </sources> </mapping> <!-- bin --> <mapping> <directory>${packaging.fess.bin.dir}</directory> <filemode>755</filemode> <sources> <source> <location>${project.basedir}/src/main/assemblies/files</location> <includes> <include>fess</include> <include>fess.in.sh</include> </includes> </source> </sources> </mapping> <!-- logs (empty) --> <mapping> <directory>${packaging.fess.log.dir}</directory> </mapping> <!-- temp (empty) --> <mapping> <directory>${packaging.fess.temp.dir}</directory> </mapping> <!-- es/plugins --> <mapping> <directory>${packaging.fess.home.dir}/es/plugins</directory> <sources> <source> <location>${project.basedir}/plugins</location> </source> </sources> </mapping> <!-- Add environment vars file --> <mapping> <directory>/etc/sysconfig/</directory> <directoryIncluded>false</directoryIncluded> <username>root</username> <groupname>root</groupname> <configuration>noreplace</configuration> <sources> <source> <location>${project.build.directory}/generated-packaging/rpm/env/</location> <includes> <include>fess</include> </includes> </source> </sources> </mapping> <!-- Add init.d files --> <mapping> <directory>/etc/init.d</directory> <directoryIncluded>false</directoryIncluded> <filemode>755</filemode> <username>root</username> <groupname>root</groupname> <configuration>true</configuration> <sources> <source> <location>${project.build.directory}/generated-packaging/rpm/init.d</location> <includes> <include>fess</include> </includes> </source> </sources> </mapping> <!-- Adds systemd file --> <mapping> <directory>${packaging.fess.systemd.dir}</directory> <directoryIncluded>false</directoryIncluded> <username>root</username> <groupname>root</groupname> <configuration>true</configuration> <sources> <source> <location>${project.build.directory}/generated-packaging/rpm/systemd</location> <includes> <include>fess.service</include> </includes> </source> </sources> </mapping> <!-- Adds systemd/sysctl.d configuration file --> <mapping> <directory>${packaging.fess.systemd.sysctl.dir}</directory> <directoryIncluded>false</directoryIncluded> <username>root</username> <groupname>root</groupname> <configuration>true</configuration> <sources> <source> <location>${project.build.directory}/generated-packaging/rpm/systemd/sysctl</location> <includes> <include>fess.conf</include> </includes> </source> </sources> </mapping> <!-- Adds systemd/tmpfiles.d configuration file --> <mapping> <directory>${packaging.fess.tmpfilesd.dir}</directory> <directoryIncluded>false</directoryIncluded> <username>root</username> <groupname>root</groupname> <configuration>true</configuration> <sources> <source> <location>${project.build.directory}/generated-packaging/rpm/systemd/</location> <includes> <include>fess.conf</include> </includes> </source> </sources> </mapping> <!-- Add readme files --> <mapping> <directory>${packaging.fess.home.dir}</directory> <sources> <source> <location>.</location> <includes> <include>LICENSE</include> <include>README.md</include> </includes> </source> </sources> </mapping> <!-- Add and sets permission on default directories --> <mapping> <directory>${packaging.fess.pid.dir}</directory> <filemode>755</filemode> <username>${packaging.fess.user}</username> <groupname>${packaging.fess.group}</groupname> </mapping> </mappings> <preinstallScriptlet> <scriptFile>${project.build.directory}/generated-packaging/rpm/scripts/preinst</scriptFile> <fileEncoding>utf-8</fileEncoding> </preinstallScriptlet> <postinstallScriptlet> <scriptFile>${project.build.directory}/generated-packaging/rpm/scripts/postinst</scriptFile> <fileEncoding>utf-8</fileEncoding> </postinstallScriptlet> <preremoveScriptlet> <scriptFile>${project.build.directory}/generated-packaging/rpm/scripts/prerm</scriptFile> <fileEncoding>utf-8</fileEncoding> </preremoveScriptlet> <postremoveScriptlet> <scriptFile>${project.build.directory}/generated-packaging/rpm/scripts/postrm</scriptFile> <fileEncoding>utf-8</fileEncoding> </postremoveScriptlet> </configuration> </plugin> </plugins> </build> <pluginRepositories> <pluginRepository> <id>codelibs.org</id> <name>CodeLibs Repository</name> <url>http://maven.codelibs.org/</url> </pluginRepository> <pluginRepository> <id>oss.sonatype.org</id> <name>oss.sonatype.org</name> <url>https://oss.sonatype.org/content/groups/public/</url> </pluginRepository> </pluginRepositories> <repositories> <repository> <id>codelibs.org</id> <name>CodeLibs Repository</name> <url>http://maven.codelibs.org/</url> </repository> <repository> <id>oss.sonatype.org</id> <name>oss.sonatype.org</name> <url>https://oss.sonatype.org/content/groups/public/</url> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <dependencies> <!-- lastaflute --> <dependency> <groupId>org.lastaflute</groupId> <artifactId>lastaflute</artifactId> <version>${lastaflute.version}</version> </dependency> <dependency> <groupId>org.lastaflute</groupId> <artifactId>lasta-taglib</artifactId> <version>${lasta.taglib.version}</version> </dependency> <!-- dbflute --> <dependency> <groupId>org.dbflute</groupId> <artifactId>dbflute-runtime</artifactId> <version>${dbflute.version}</version> </dependency> <!-- transaction --> <dependency> <groupId>javax.transaction</groupId> <artifactId>javax.transaction-api</artifactId> <version>1.2</version> </dependency> <!-- logging --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>${logback.version}</version> </dependency> <dependency> <groupId>org.codehaus.janino</groupId> <artifactId>janino</artifactId> <version>2.7.8</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> <version>${slf4j.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> <version>${slf4j.version}</version> </dependency> <!-- servlet --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> <!-- contains taglibs.standard --> <!-- <scope>provided</scope> --> </dependency> <!-- elasticsearch --> <dependency> <groupId>org.elasticsearch</groupId> <artifactId>elasticsearch</artifactId> <version>${elasticsearch.version}</version> </dependency> <dependency> <groupId>org.codelibs</groupId> <artifactId>elasticsearch-cluster-runner</artifactId> <version>${cluster.runner.version}</version> <exclusions> <exclusion> <artifactId>log4j</artifactId> <groupId>log4j</groupId> </exclusion> </exclusions> </dependency> <!-- common library --> <dependency> <groupId>org.codelibs</groupId> <artifactId>corelib</artifactId> <version>0.3.1</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.4</version> </dependency> <dependency> <groupId>com.ibm.icu</groupId> <artifactId>icu4j</artifactId> <version>56.1</version> </dependency> <!-- suggest library --> <dependency> <groupId>org.codelibs.fess</groupId> <artifactId>fess-suggest</artifactId> <version>${suggest.version}</version> </dependency> <!-- fileupload --> <dependency> <!-- TODO remove? --> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>${commons.fileupload.version}</version> </dependency> <!-- scheduler --> <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.2</version> </dependency> <!-- mail --> <dependency> <groupId>org.dbflute.mail</groupId> <artifactId>mailflute</artifactId> <version>${mailflute.version}</version> </dependency> <!-- csv --> <dependency> <groupId>com.orangesignal</groupId> <artifactId>orangesignal-csv</artifactId> <version>2.2.1</version> </dependency> <!-- Crawler --> <dependency> <groupId>org.codelibs.fess</groupId> <artifactId>fess-crawler-lasta</artifactId> <version>${crawler.version}</version> </dependency> <dependency> <groupId>org.codelibs.fess</groupId> <artifactId>fess-crawler-es</artifactId> <version>${crawler.version}</version> </dependency> <dependency> <groupId>args4j</groupId> <artifactId>args4j</artifactId> <version>2.32</version> </dependency> <!-- json --> <dependency> <!-- TODO remove --> <groupId>net.arnx</groupId> <artifactId>jsonic</artifactId> <version>1.3.8</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.6.3</version> </dependency> <!-- template --> <dependency> <groupId>com.github.jknack</groupId> <artifactId>handlebars</artifactId> <version>2.3.2</version> </dependency> <!-- groovy --> <dependency> <groupId>org.codehaus.groovy</groupId> <artifactId>groovy-all</artifactId> <version>2.4.5</version> </dependency> <!-- phantomjsdriver --> <dependency> <groupId>com.github.detro</groupId> <artifactId>phantomjsdriver</artifactId> <version>1.2.0</version> <exclusions> <exclusion> <artifactId>selenium-chrome-driver</artifactId> <groupId>org.seleniumhq.selenium</groupId> </exclusion> <exclusion> <artifactId>selenium-htmlunit-driver</artifactId> <groupId>org.seleniumhq.selenium</groupId> </exclusion> <exclusion> <artifactId>selenium-firefox-driver</artifactId> <groupId>org.seleniumhq.selenium</groupId> </exclusion> <exclusion> <artifactId>selenium-ie-driver</artifactId> <groupId>org.seleniumhq.selenium</groupId> </exclusion> <exclusion> <artifactId>selenium-safari-driver</artifactId> <groupId>org.seleniumhq.selenium</groupId> </exclusion> <exclusion> <artifactId>webbit</artifactId> <groupId>org.webbitserver</groupId> </exclusion> <exclusion> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> </exclusion> </exclusions> </dependency> <!-- Tomcat --> <dependency> <groupId>org.dbflute.tomcat</groupId> <artifactId>tomcat-boot</artifactId> <version>${tomcat.boot.version}</version> <!-- Disable scope at development on IDEA --> <scope>provided</scope> <exclusions> <exclusion> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-servlet-api</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-juli</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-api</artifactId> </exclusion> <exclusion> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-util-scan</artifactId> </exclusion> </exclusions> </dependency> <!-- test --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.dbflute.utflute</groupId> <artifactId>utflute-lastaflute</artifactId> <version>${utflute.version}</version> <scope>test</scope> </dependency> </dependencies> </project>