You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by kw...@apache.org on 2022/06/27 07:20:15 UTC
[jackrabbit-filevault-package-maven-plugin] 01/01: releng: enforce complete runtime classpath
This is an automated email from the ASF dual-hosted git repository.
kwin pushed a commit to branch feature/enforce-complete-runtime-classpath
in repository https://gitbox.apache.org/repos/asf/jackrabbit-filevault-package-maven-plugin.git
commit ea06b9cb13c1dff15931733bff6ccf2a0f43c54d
Author: Konrad Windszus <kw...@apache.org>
AuthorDate: Mon Jun 27 09:20:08 2022 +0200
releng: enforce complete runtime classpath
---
pom.xml | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
diff --git a/pom.xml b/pom.xml
index 0fc0972..82ea085 100644
--- a/pom.xml
+++ b/pom.xml
@@ -125,6 +125,60 @@
</execution>
</executions>
</plugin>
+ <!-- validate that all necessary dependencies are part of the Maven plugin classpath -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.sling</groupId>
+ <artifactId>maven-enforcer-rules</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ </dependencies>
+ <executions>
+ <execution>
+ <id>enforce-complete-plugin-classpath</id>
+ <goals>
+ <goal>enforce</goal>
+ </goals>
+ <configuration>
+ <rules>
+ <requireProvidedDependenciesInRuntimeClasspath
+ implementation="org.apache.sling.maven.enforcer.RequireProvidedDependenciesInRuntimeClasspath">
+ <excludes>
+ <exclude>javax.servlet:javax.servlet-api</exclude><!-- not used in the CLI context -->
+ <exclude>*:txw2</exclude><!-- embedded in vault-core -->
+ <exclude>*:woodstox-core</exclude><!-- embedded in vault-core -->
+ <exclude>*:stax2-api</exclude><!-- embedded in vault-core -->
+ <exclude>*:maven-artifact</exclude><!-- embedded in vault-core -->
+ <exclude>*:h2</exclude><!-- embedded in vault-core -->
+ <exclude>org.apache.jackrabbit:jackrabbit-spi2dav</exclude><!-- not used in this context -->
+ <!-- the following artifacts are not supposed to be used in OSGi/container context -->
+ <exclude>org.apache.maven:maven-archiver</exclude>
+ <exclude>org.codehaus.plexus:plexus-archiver</exclude>
+ <exclude>org.apache.maven.shared:maven-common-artifact-filters</exclude>
+ <exclude>org.apache.maven.shared:maven-shared-utils</exclude>
+ <exclude>org.sonatype.plexus:plexus-build-api</exclude>
+ <exclude>org.apache.maven.shared:maven-filtering</exclude>
+ <exclude>org.codehaus.mojo:animal-sniffer-maven-plugin</exclude>
+ <exclude>biz.aQute.bnd:biz.aQute.bndlib</exclude>
+ <exclude>org.slf4j:slf4j-api</exclude> <!-- always provided by Maven distribution -->
+ <!-- no annotations are evaluated at run time -->
+ <exclude>org.jetbrains:annotations</exclude>
+ <exclude>org.eclipse.jdt:org.eclipse.jdt.annotation</exclude>
+ <exclude>org.osgi:osgi.annotation</exclude>
+ <exclude>org.osgi:org.osgi.annotation</exclude>
+ <exclude>org.osgi:org.osgi.annotation.versioning</exclude>
+ <exclude>org.osgi:org.osgi.service.metatype.annotations</exclude>
+ <exclude>org.osgi:org.osgi.service.component.annotations</exclude>
+ </excludes>
+ </requireProvidedDependenciesInRuntimeClasspath>
+ </rules>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
<!-- ====================================================================== -->
<!-- I N S T A L L P L U G I N -->
<!-- ====================================================================== -->
@@ -275,6 +329,7 @@
<artifactId>plexus-utils</artifactId>
<version>3.4.2</version>
</dependency>
+ <!-- Maven uses/provides a different SLF4J version than defined by FileVault Parent -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>