I also think this is definately not a micro-change! If it is
incompatible with client-code then this has to be a major version bump.
Beside this I think embedding things should only be used in very rare
cases but instead we should try to use bnds class check to make sure we
always use a compatible version then there won't be any problem.
Am 20.10.2017 um 09:25 schrieb Christian Schneider:
I just tried to upgrade pax exam to the current snapshot of the base
modules to test a change I plan to do in the exec module.
Some of the tests fail with the exception below. This seems to be
because of the introduction of StreamStore in base.store. This happens
if a bundle like tinybundles 3.0.0 is compiled against base.store 1.5.0
but is then run with base 1.5.1. I propose to revert this commit and go
back to Store<InputStream>.
In general we should also think of ways to make us more independent of
such changes in util modules. I have seen an approach in the brave
project where they always embed util packages
with a changes name to make it unique. I think this is a very good
approach to make the code modular by minimising runtime dependencies.
Unfortunately their approach does not work with the maven bundle plugin
out of the box. See
https://github.com/openzipkin/zipkin/blob/master/zipkin/pom.xml#L153-L154
Christian
---
java.lang.NoSuchMethodError:
org.ops4j.store.StoreFactory.anonymousStore()Lorg/ops4j/store/Store;
at
org.ops4j.pax.tinybundles.core.TinyBundles.getDefaultStore(TinyBundles.java:104)
at org.ops4j.pax.tinybundles.core.TinyBundles.bundle(TinyBundles.java:50)
at
org.ops4j.pax.exam.forked.ForkedFrameworkFactoryTest.generateBundle(ForkedFrameworkFactoryTest.java:154)
at
org.ops4j.pax.exam.forked.ForkedFrameworkFactoryTest.forkWithBootClasspath(ForkedFrameworkFactoryTest.java:113)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
at org.junit.rules.RunRules.evaluate(RunRules.java:20)
at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at
org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)
at
org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:539)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:761)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:461)
at
org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:207)
--
--
Christian Schneider
http://www.liquid-reality.de
<https://owa.talend.com/owa/redir.aspx?C=3aa4083e0c744ae1ba52bd062c5a7e46&URL=http%3a%2f%2fwww.liquid-reality.de>
Computer Scientist
http://www.adobe.com
--
--
------------------
OPS4J - http://www.ops4j.org - [email protected]
---
You received this message because you are subscribed to the Google
Groups "OPS4J" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to [email protected]
<mailto:[email protected]>.
For more options, visit https://groups.google.com/d/optout.
--
--
------------------
OPS4J - http://www.ops4j.org - [email protected]
---
You received this message because you are subscribed to the Google Groups "OPS4J" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.