This is an automated email from the ASF dual-hosted git repository. tallison pushed a commit to branch TIKA-4143 in repository https://gitbox.apache.org/repos/asf/tika.git
commit 1b2ff3f87913123f17d26dccd88470fcde404b7e Author: tballison <[email protected]> AuthorDate: Wed Sep 27 11:56:05 2023 -0400 TIKA-4143 -- initial work on tika-app for a thin-jar distribution --- tika-app/assembly.xml | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++ tika-app/pom.xml | 36 +++++++++++++++++++++++++--- 2 files changed, 98 insertions(+), 3 deletions(-) diff --git a/tika-app/assembly.xml b/tika-app/assembly.xml new file mode 100644 index 000000000..2e97520cd --- /dev/null +++ b/tika-app/assembly.xml @@ -0,0 +1,65 @@ +<!-- + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. +--> +<assembly xmlns="http://maven.apache.org/ASSEMBLY/2.2.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/ASSEMBLY/2.2.0 https://maven.apache.org/xsd/assembly-2.2.0.xsd"> + + <id>bin</id> + <!-- Specifies that our binary distribution is a zip package --> + <formats> + <format>zip</format> + </formats> + + <!-- Adds the dependencies of our application to the lib directory --> + <dependencySets> + <dependencySet> + <!-- + Project artifact is not copied under library directory since + it is added to the root directory of the zip package. + --> + <useProjectArtifact>false</useProjectArtifact> + <outputDirectory>lib</outputDirectory> + <unpack>false</unpack> + </dependencySet> + </dependencySets> + <fileSets> + <!-- + Adds startup scripts to the root directory of zip package. The startup + scripts are copied from the src/main/scripts directory. + + <fileSet> + <directory>${project.build.scriptSourceDirectory}</directory> + <outputDirectory></outputDirectory> + <includes> + <include>startup.*</include> + </includes> + </fileSet>--> + <!-- + Adds the jar file of our example application to the root directory + of the created zip package. + --> + <fileSet> + <directory>${project.build.directory}</directory> + <outputDirectory></outputDirectory> + <includes> + <include>original-*.jar</include> + </includes> + </fileSet> + </fileSets> +</assembly> \ No newline at end of file diff --git a/tika-app/pom.xml b/tika-app/pom.xml index 68ac79477..27d099b06 100644 --- a/tika-app/pom.xml +++ b/tika-app/pom.xml @@ -106,6 +106,7 @@ </resource> </resources> <plugins> + <plugin> <artifactId>maven-shade-plugin</artifactId> <version>${maven.shade.version}</version> @@ -135,15 +136,15 @@ <exclude>CHANGES</exclude> <exclude>README</exclude> <exclude>builddef.lst</exclude> - <!-- clutter not needed in jar --> + <!-- clutter not needed in jar --> <exclude>resources/grib1/nasa/README*.pdf</exclude> <exclude>resources/grib1/**/readme*.txt</exclude> <exclude>resources/grib2/**/readme*.txt</exclude> - <!-- TIKA-763: Workaround to avoid including LGPL classes --> + <!-- TIKA-763: Workaround to avoid including LGPL classes --> <exclude>ucar/nc2/iosp/fysat/Fysat*.class</exclude> <exclude>ucar/nc2/dataset/transform/VOceanSG1*class</exclude> <exclude>ucar/unidata/geoloc/vertical/OceanSG*.class</exclude> - <!-- https://issues.apache.org/jira/browse/TIKA-3650--> + <!-- https://issues.apache.org/jira/browse/TIKA-3650 --> <exclude>javax/**/*</exclude> </excludes> @@ -177,6 +178,30 @@ </execution> </executions> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + + <artifactId>maven-assembly-plugin</artifactId> + + <configuration> + <appendAssemblyId>true</appendAssemblyId> + <finalName>tika-app</finalName> + <descriptors> + <descriptor>assembly.xml</descriptor> + </descriptors> + </configuration> + + <executions> + <execution> + <id>make-assembly</id> + <!-- bind to the packaging phase --> + <phase>package</phase> + <goals> + <goal>single</goal> + </goals> + </execution> + </executions> + </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> @@ -185,6 +210,11 @@ <manifestEntries> <Automatic-Module-Name>org.apache.tika.app</Automatic-Module-Name> </manifestEntries> + <manifest> + <addClasspath>true</addClasspath> + <classpathPrefix>lib/</classpathPrefix> + <mainClass>org.apache.tika.cli.TikaCLI</mainClass> + </manifest> </archive> </configuration> <executions>
