No, non esiste un tale repository o artefatto.
Ci stavo lavorando un po 'di tempo fa perché abbiamo un Tomcat standard che pre-configuriamo e spediamo insieme al nostro prodotto.
Abbiamo finito per scaricare il file zip Tomcat dal sito ufficiale (tramite Maven) e quindi applicare le modifiche richieste e quindi inviarle al nostro Nexus.
Ecco, più o meno come lo facciamo:
<?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.apache.tomcat</groupId>
<artifactId>tomcat</artifactId>
<version>7.0.28-ourbranding-1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Pre-Configured Tomcat</name>
<properties>
<version.tomcat>7.0.28</version.tomcat>
<tomcat.archive.file>${project.build.directory}/apache-tomcat-${version.tomcat}.zip</tomcat.archive.file>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>repackage-tomcat</id>
<phase>process-resources</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<echo message="Re-packaging ${tomcat.archive.file}..." />
<unzip src="${basedir}/src/main/lib/apache-tomcat-${version.tomcat}.zip" dest="${project.build.directory}" />
<move file="${project.build.directory}/apache-tomcat-${version.tomcat}" tofile="${project.build.directory}/tomcat" />
<!-- Remove the default webapps -->
<delete dir="${project.build.directory}/tomcat/webapps/docs" />
<delete dir="${project.build.directory}/tomcat/webapps/manager" />
<delete dir="${project.build.directory}/tomcat/webapps/host-manager" />
<delete dir="${project.build.directory}/tomcat/webapps/examples" />
<!-- Patch the bin/catalina* scripts to include some of our jars in the classpath -->
<!-- ... Some more magic goes on here ... -->
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>attach-artifacts</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>${tomcat.archive.file}</file>
<type>zip</type>
</artifact>
</artifacts>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
Beh, questo è esattamente quello che facciamo anche noi. Quello che mi piacerebbe di più è solo cambiare la versione della dipendenza da tomcat (ad es. Quando è stato pubblicato un nuovo rilascio), e Maven lo recupera automaticamente. – coldrock
Dai un'occhiata alla mia risposta aggiornata. – carlspring
Ok, è quasi nello stesso modo in cui lo facciamo. Ma invece di commettere il tomcat.zip originale nel sistema di controllo della versione, lo teniamo nel nostro nesso. Quando voglio utilizzare una nuova versione di tomcat, la scarico e la carica manualmente nel nostro Nexus, quindi posso riferirmi come una vera dipendenza dalla build di maven. – coldrock