When running an Eclipse bundle's tests, Tycho Surefire resolves its runtime dependencies using a class loader, which is in fact just looking through Bundle-ClassPath. As a result, it must copy over and include system jars in its Bundle-ClassPath. We use Fedora system jars to satisfy these dependencies but even these jars differ slightly in terms of provided classes.
161 lines
7.5 KiB
Diff
161 lines
7.5 KiB
Diff
From 5ddb88911071664de0e07f7f247aeeaedecc8cab Mon Sep 17 00:00:00 2001
|
|
From: Roland Grunberg <rgrunber@redhat.com>
|
|
Date: Tue, 29 May 2012 14:27:27 -0400
|
|
Subject: [PATCH] Resolve all necessary dependencies for Tycho Surefire.
|
|
|
|
When running an Eclipse bundle's tests, Tycho Surefire resolves its
|
|
runtime dependencies using a class loader, which is in fact just looking
|
|
through Bundle-ClassPath. As a result, it must copy over and include
|
|
system jars in its Bundle-ClassPath. We use Fedora system jars to
|
|
satisfy these dependencies but even these jars differ slightly in terms
|
|
of provided classes. This patch addresses this issue.
|
|
|
|
Basically, the jars added to the Bundle-ClassPath in this patch, provide
|
|
the additional classes that are in the original jars used upstream.
|
|
---
|
|
pom.xml | 2 +-
|
|
.../META-INF/MANIFEST.MF | 5 +++--
|
|
.../build.properties | 2 +-
|
|
.../org.eclipse.tycho.surefire.junit/pom.xml | 5 +++++
|
|
.../META-INF/MANIFEST.MF | 4 +++-
|
|
.../build.properties | 2 +-
|
|
.../org.eclipse.tycho.surefire.junit4/pom.xml | 10 ++++++++++
|
|
.../META-INF/MANIFEST.MF | 3 ++-
|
|
.../org.eclipse.tycho.surefire.osgibooter/pom.xml | 5 +++++
|
|
9 files changed, 31 insertions(+), 7 deletions(-)
|
|
|
|
diff --git a/pom.xml b/pom.xml
|
|
index e9d8624..ca20999 100644
|
|
--- a/pom.xml
|
|
+++ b/pom.xml
|
|
@@ -79,7 +79,7 @@
|
|
<junitVersion>3.8.2</junitVersion>
|
|
<plexusVersion>1.5.5</plexusVersion>
|
|
<plexusInterpolationVersion>1.14</plexusInterpolationVersion>
|
|
- <plexusUtilsVersion>2.0.4</plexusUtilsVersion>
|
|
+ <plexusUtilsVersion>3.0</plexusUtilsVersion>
|
|
<sisuInjectVersion>1.4.2</sisuInjectVersion>
|
|
<wagonVersion>1.0-beta-6</wagonVersion>
|
|
<securityDispatcherVersion>1.3</securityDispatcherVersion>
|
|
diff --git a/tycho-surefire/org.eclipse.tycho.surefire.junit/META-INF/MANIFEST.MF b/tycho-surefire/org.eclipse.tycho.surefire.junit/META-INF/MANIFEST.MF
|
|
index 9264109..a27abe4 100644
|
|
--- a/tycho-surefire/org.eclipse.tycho.surefire.junit/META-INF/MANIFEST.MF
|
|
+++ b/tycho-surefire/org.eclipse.tycho.surefire.junit/META-INF/MANIFEST.MF
|
|
@@ -6,6 +6,7 @@ Bundle-Version: 0.14.1
|
|
Fragment-Host: org.eclipse.tycho.surefire.osgibooter;bundle-version="0.14.0"
|
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5,
|
|
JavaSE-1.6
|
|
-Require-Bundle: org.junit;bundle-version="[3.8.0,4.0.0)"
|
|
-Bundle-ClassPath: jars/surefire-junit3-2.10.jar
|
|
+Require-Bundle: org.junit;bundle-version="[3.8.0,4.9.0)"
|
|
+Bundle-ClassPath: jars/surefire-junit3-2.10.jar,
|
|
+ jars/common-junit3-2.10.jar
|
|
Bundle-Vendor: %providerName
|
|
diff --git a/tycho-surefire/org.eclipse.tycho.surefire.junit/build.properties b/tycho-surefire/org.eclipse.tycho.surefire.junit/build.properties
|
|
index 499ce76..fe88b19 100644
|
|
--- a/tycho-surefire/org.eclipse.tycho.surefire.junit/build.properties
|
|
+++ b/tycho-surefire/org.eclipse.tycho.surefire.junit/build.properties
|
|
@@ -9,5 +9,5 @@
|
|
# Sonatype Inc. - initial API and implementation
|
|
###############################################################################
|
|
bin.includes = META-INF/,\
|
|
- jars/surefire-junit3-2.10.jar,\
|
|
+ jars/,\
|
|
plugin.properties
|
|
diff --git a/tycho-surefire/org.eclipse.tycho.surefire.junit/pom.xml b/tycho-surefire/org.eclipse.tycho.surefire.junit/pom.xml
|
|
index 2a4afc8..ae35035 100644
|
|
--- a/tycho-surefire/org.eclipse.tycho.surefire.junit/pom.xml
|
|
+++ b/tycho-surefire/org.eclipse.tycho.surefire.junit/pom.xml
|
|
@@ -47,6 +47,11 @@
|
|
<artifactId>surefire-junit3</artifactId>
|
|
<version>${surefire-version}</version>
|
|
</artifactItem>
|
|
+ <artifactItem>
|
|
+ <groupId>org.apache.maven.surefire</groupId>
|
|
+ <artifactId>common-junit3</artifactId>
|
|
+ <version>${surefire-version}</version>
|
|
+ </artifactItem>
|
|
</artifactItems>
|
|
</configuration>
|
|
</execution>
|
|
diff --git a/tycho-surefire/org.eclipse.tycho.surefire.junit4/META-INF/MANIFEST.MF b/tycho-surefire/org.eclipse.tycho.surefire.junit4/META-INF/MANIFEST.MF
|
|
index bbb54a8..82e66d1 100644
|
|
--- a/tycho-surefire/org.eclipse.tycho.surefire.junit4/META-INF/MANIFEST.MF
|
|
+++ b/tycho-surefire/org.eclipse.tycho.surefire.junit4/META-INF/MANIFEST.MF
|
|
@@ -6,7 +6,9 @@ Bundle-Version: 0.14.1
|
|
Fragment-Host: org.eclipse.tycho.surefire.osgibooter;bundle-version="0.14.0"
|
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5,
|
|
JavaSE-1.6
|
|
-Bundle-ClassPath: jars/surefire-junit4-2.10.jar
|
|
+Bundle-ClassPath: jars/surefire-junit4-2.10.jar,
|
|
+ jars/common-junit3-2.10.jar,
|
|
+ jars/common-junit4-2.10.jar
|
|
Import-Package: junit.framework;version="4.0.0",
|
|
org.junit;version="4.0.0",
|
|
org.junit.runner;version="4.0.0",
|
|
diff --git a/tycho-surefire/org.eclipse.tycho.surefire.junit4/build.properties b/tycho-surefire/org.eclipse.tycho.surefire.junit4/build.properties
|
|
index b787149..fe88b19 100644
|
|
--- a/tycho-surefire/org.eclipse.tycho.surefire.junit4/build.properties
|
|
+++ b/tycho-surefire/org.eclipse.tycho.surefire.junit4/build.properties
|
|
@@ -9,5 +9,5 @@
|
|
# Sonatype Inc. - initial API and implementation
|
|
###############################################################################
|
|
bin.includes = META-INF/,\
|
|
- jars/surefire-junit4-2.10.jar,\
|
|
+ jars/,\
|
|
plugin.properties
|
|
diff --git a/tycho-surefire/org.eclipse.tycho.surefire.junit4/pom.xml b/tycho-surefire/org.eclipse.tycho.surefire.junit4/pom.xml
|
|
index 08ab16a..2ed7c3a 100644
|
|
--- a/tycho-surefire/org.eclipse.tycho.surefire.junit4/pom.xml
|
|
+++ b/tycho-surefire/org.eclipse.tycho.surefire.junit4/pom.xml
|
|
@@ -71,6 +71,16 @@
|
|
<artifactId>surefire-junit4</artifactId>
|
|
<version>${surefire-version}</version>
|
|
</artifactItem>
|
|
+ <artifactItem>
|
|
+ <groupId>org.apache.maven.surefire</groupId>
|
|
+ <artifactId>common-junit3</artifactId>
|
|
+ <version>${surefire-version}</version>
|
|
+ </artifactItem>
|
|
+ <artifactItem>
|
|
+ <groupId>org.apache.maven.surefire</groupId>
|
|
+ <artifactId>common-junit4</artifactId>
|
|
+ <version>${surefire-version}</version>
|
|
+ </artifactItem>
|
|
</artifactItems>
|
|
</configuration>
|
|
</execution>
|
|
diff --git a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/META-INF/MANIFEST.MF b/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/META-INF/MANIFEST.MF
|
|
index fda57c6..ab5de08 100644
|
|
--- a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/META-INF/MANIFEST.MF
|
|
+++ b/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/META-INF/MANIFEST.MF
|
|
@@ -5,7 +5,8 @@ Require-Bundle: org.eclipse.osgi;bundle-version="3.2.2",
|
|
Eclipse-AutoStart: true
|
|
Bundle-ClassPath: .,
|
|
jars/surefire-booter-2.10.jar,
|
|
- jars/surefire-api-2.10.jar
|
|
+ jars/surefire-api-2.10.jar,
|
|
+ jars/plexus-utils-3.0.jar
|
|
Bundle-Version: 0.14.1
|
|
Bundle-Name: Tycho Surefire OSGi Booter Eclipse Application (Incubation)
|
|
Bundle-ManifestVersion: 2
|
|
diff --git a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/pom.xml b/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/pom.xml
|
|
index cd5b2d7..d1d24da 100644
|
|
--- a/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/pom.xml
|
|
+++ b/tycho-surefire/org.eclipse.tycho.surefire.osgibooter/pom.xml
|
|
@@ -52,6 +52,11 @@
|
|
<artifactId>surefire-booter</artifactId>
|
|
<version>${surefire-version}</version>
|
|
</artifactItem>
|
|
+ <artifactItem>
|
|
+ <groupId>org.codehaus.plexus</groupId>
|
|
+ <artifactId>plexus-utils</artifactId>
|
|
+ <version>${plexusUtilsVersion}</version>
|
|
+ </artifactItem>
|
|
</artifactItems>
|
|
</configuration>
|
|
</execution>
|
|
--
|
|
1.7.7.6
|
|
|