[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
Re: [tycho-user] Getting a combination of JUnit4, Hamcrest, Mockito to work in Eclipse AND Tycho
|
Thanks,
I've tried the Orbit bundles first of course, but they let the test fail
when running in the IDE:
- java.lang.SecurityException: class "org.hamcrest.Matchers"'s signer
information does not match signer information of other classes in the
same package
Thanks!
Stephan
Am 20.07.2017 um 16:19 schrieb Matthew Piggott:
> Not really answering your question but Orbit has both JUnit and Hamcrest
> - http://download.eclipse.org/tools/orbit/downloads/drops/R20170516192513/
>
> Mockito is there too but is an older version.
>
> On 20 July 2017 at 10:12, Stephan Druskat <stephan.druskat@xxxxxxxxx
> <mailto:stephan.druskat@xxxxxxxxx>> wrote:
>
> Dear List,
>
> I've managed to get JUnit 4.12 + Hamcrest 1.3 + Mockito 2.8.47 to work
> in Eclipse so that when I add them as dependencies, the tests will run.
>
> (The way I've done this is using the p2-maven-plugin
> (https://github.com/reficio/p2-maven-plugin/
> <https://github.com/reficio/p2-maven-plugin/>) to bundle the following
> artifacts from Maven Central into plugins/a feature and provie them
> via P2:
>
> https://github.com/reficio/p2-maven-plugin/
> <https://github.com/reficio/p2-maven-plugin/>
> - junit 4.12
> - org.mockito.mockito-core 2.8.47
> - org.hamcrest.all 1.3.0
> )
>
> Adding the plugins to my test fragment as dependencies makes the tests
> run in Eclipse.
>
> However, the Tycho build of the same fragment will fail with the
> following messages:
>
> java.lang.LinkageError: loader constraint violation: loader (instance of
> org/eclipse/osgi/internal/loader/EquinoxClassLoader) previously
> initiated loading for a different type with name "org/hamcrest/Matcher"
> at java.lang.ClassLoader.defineClass1(Native Method)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
> at
> org.eclipse.osgi.internal.loader.ModuleClassLoader.defineClass(ModuleClassLoader.java:273)
> at
> org.eclipse.osgi.internal.loader.classpath.ClasspathManager.defineClass(ClasspathManager.java:632)
> at
> org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassImpl(ClasspathManager.java:586)
> at
> org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClassImpl(ClasspathManager.java:538)
> at
> org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:525)
> at
> org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:325)
> at
> org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:345)
> at
> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:423)
> at
> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:372)
> at
> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:364)
> at
> org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:161)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
> at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:12)
> at org.junit.Assert.assertThat(Assert.java:956)
> at org.junit.Assert.assertThat(Assert.java:923)
>
> So it seems that some other plugin is loading the package
> "org.hamcrest.Matcher" before this fragment does. This is probably due
> to the import/export/partial import/partial export chaos surrounding the
> JUnit/Hamcrest/Mockito setup.
>
> Does anyone have an idea, or even better: a working example, of how to
> get the three components work together both within the IDE (for quick
> checks on whether tests run) and Tycho (for checks during the build?
>
> Many thanks indeed!
> Best
> Stephan
> _______________________________________________
> tycho-user mailing list
> tycho-user@xxxxxxxxxxx <mailto:tycho-user@xxxxxxxxxxx>
> To change your delivery options, retrieve your password, or
> unsubscribe from this list, visit
> https://dev.eclipse.org/mailman/listinfo/tycho-user
> <https://dev.eclipse.org/mailman/listinfo/tycho-user>
>
>
>
>
> _______________________________________________
> tycho-user mailing list
> tycho-user@xxxxxxxxxxx
> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
> https://dev.eclipse.org/mailman/listinfo/tycho-user
>