Its now like 1.x. Reason is also to not let conflict parallel builds. You can overwrite it with the an option called workingDirectory( final String directory ).
On Tue, Jul 5, 2011 at 6:05 AM, Sanjeeb Sahoo <www.sa...@gmail.com> wrote: > Your reply made me think I would have to add pax-url-aether only, but > that didn't work. I also had to work pax-exam-link-assembly to make it > work. > > Now that I have gone past the initial bootstrapping issues, I see a > difference in 2.1.0. I see native test container no longer uses > org.osgi.framework.storage as specified by me. I generate it in maven > target directory to control the life cycle of the cache. pax-exam is > now always using a temporary one as shown by the code below: > > private Map<String, String> createFrameworkProperties( ) throws > IOException > { > final Map<String, String> p = new HashMap<String, String>(); > p.put( org.osgi.framework.Constants.FRAMEWORK_STORAGE, > m_system.getTempFolder().getAbsolutePath() ); > p.put( org.osgi.framework.Constants.FRAMEWORK_SYSTEMPACKAGES_EXTRA, > buildString( m_system.getOptions( SystemPackageOption.class ) ) ); > p.put( org.osgi.framework.Constants.FRAMEWORK_BOOTDELEGATION, > buildString( m_system.getOptions( BootDelegationOption.class ) ) ); > > for ( SystemPropertyOption option : m_system.getOptions( > SystemPropertyOption.class ) ) > { > System.setProperty( option.getKey(), option.getValue() ); > } > return p; > } > > May I know the reason for this change in behavior? > > Sahoo > > On Mon, Jul 4, 2011 at 11:38 PM, Toni Menzel <t...@okidokiteam.com> wrote: > > You need to have it. > > Keep https://github.com/tonit/Learn-PaxExam/ as a reference. I will > update > > this (README.md + Example projects) with every released version. > > Example pom for Native Container (which you are > > using): > https://github.com/tonit/Learn-PaxExam/blob/master/lesson-plumbing/pom.xml > > With Native Container its important to now that it comes with minimal Pax > > URL Handlers pre-installed. (pax-url-link and pax-url-classpath). > > This is most important to remember when using > maven().groupId().artifact() > > Configuration sugar. > > In that case you need to add pax-url-aether (current version 1.3.3) to > the > > pom yourself. > > This is different to the PaxRunner Container, which has all the handlers > > pre-installed by default. > > Native Container is (should be) the lean and mean test container > > implementation which does not involve remoting, extra spawned process > etc. > > But i think thats why you chose NativeContainer already. > > let me know if it works for you. > > Toni > > > > On Mon, Jul 4, 2011 at 6:43 PM, Sanjeeb Sahoo <www.sa...@gmail.com> > wrote: > >> > >> No, I just checked in the effective pom as well. > >> > >> On Mon, Jul 4, 2011 at 8:16 PM, Toni Menzel <t...@okidokiteam.com> > wrote: > >> > you have this in your dependency list ? > >> > <dependency> > >> > <groupId>org.ops4j.pax.exam</groupId> > >> > <artifactId>pax-exam-link-assembly</artifactId> > >> > <version>2.1.0</version> > >> > <scope>test</scope> > >> > </dependency> > >> > ? > >> > > >> > > >> > On Mon, Jul 4, 2011 at 4:30 PM, Sanjeeb Sahoo <www.sa...@gmail.com> > >> > wrote: > >> >> > >> >> This is what I get when I use exam 2.1.0: > >> >> > >> >> Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.52 > >> >> sec <<< FAILURE! > >> >> initializationError(org.glassfish.fighterfish.test.it.SingleTest) > >> >> Time elapsed: 0.004 sec <<< ERROR! > >> >> org.ops4j.pax.exam.TestContainerException: Problem starting test > >> >> container. > >> >> at > >> >> > >> >> > org.ops4j.pax.exam.nat.internal.NativeTestContainer.start(NativeTestContainer.java:199) > >> >> at > >> >> > >> >> > org.ops4j.pax.exam.spi.reactors.EagerSingleStagedReactor.<init>(EagerSingleStagedReactor.java:56) > >> >> at > >> >> > >> >> > org.ops4j.pax.exam.spi.reactors.EagerSingleStagedReactorFactory.create(EagerSingleStagedReactorFactory.java:34) > >> >> at > >> >> > >> >> > org.ops4j.pax.exam.spi.driversupport.DefaultExamReactor.stage(DefaultExamReactor.java:87) > >> >> at > >> >> > >> >> > org.ops4j.pax.exam.junit.JUnit4TestRunner.prepareReactor(JUnit4TestRunner.java:155) > >> >> at > >> >> > >> >> > org.ops4j.pax.exam.junit.JUnit4TestRunner.<init>(JUnit4TestRunner.java:79) > >> >> at > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native > >> >> Method) > >> >> at > >> >> > >> >> > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > >> >> at > >> >> > >> >> > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > >> >> at > >> >> java.lang.reflect.Constructor.newInstance(Constructor.java:513) > >> >> at > >> >> > >> >> > org.junit.internal.builders.AnnotatedBuilder.buildRunner(AnnotatedBuilder.java:31) > >> >> at > >> >> > >> >> > org.junit.internal.builders.AnnotatedBuilder.runnerForClass(AnnotatedBuilder.java:24) > >> >> at > >> >> > >> >> > org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57) > >> >> at > >> >> > >> >> > org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:29) > >> >> at > >> >> > >> >> > org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:57) > >> >> at > >> >> > >> >> > org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:24) > >> >> at > >> >> > >> >> > org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:51) > >> >> at > >> >> > >> >> > org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:119) > >> >> at > >> >> > >> >> > org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:101) > >> >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > >> >> at > >> >> > >> >> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > >> >> at > >> >> > >> >> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > >> >> at java.lang.reflect.Method.invoke(Method.java:597) > >> >> at > >> >> > >> >> > org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(ProviderFactory.java:103) > >> >> at $Proxy0.invoke(Unknown Source) > >> >> at > >> >> > >> >> > org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireStarter.java:150) > >> >> at > >> >> > >> >> > org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(SurefireStarter.java:91) > >> >> at > >> >> > >> >> > org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69) > >> >> Caused by: org.osgi.framework.BundleException: Unable to cache > bundle: > >> >> link:classpath:META-INF/links/org.ops4j.pax.exam.rbc.link > >> >> at > >> >> org.apache.felix.framework.Felix.installBundle(Felix.java:2480) > >> >> at > >> >> org.apache.felix.framework.Felix.installBundle(Felix.java:2436) > >> >> at > >> >> > >> >> > org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:129) > >> >> at > >> >> > >> >> > org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:107) > >> >> at > >> >> > >> >> > org.ops4j.pax.exam.nat.internal.NativeTestContainer.installAndStartBundles(NativeTestContainer.java:273) > >> >> at > >> >> > >> >> > org.ops4j.pax.exam.nat.internal.NativeTestContainer.start(NativeTestContainer.java:196) > >> >> ... 27 more > >> >> Caused by: java.lang.IllegalStateException: Stream handler > unavailable > >> >> due to: null > >> >> at > >> >> > >> >> > org.apache.felix.framework.URLHandlersStreamHandlerProxy.openConnection(URLHandlersStreamHandlerProxy.java:311) > >> >> at java.net.URL.openConnection(URL.java:945) > >> >> at > >> >> > >> >> > org.apache.felix.framework.cache.JarRevision.initialize(JarRevision.java:155) > >> >> at > >> >> > >> >> > org.apache.felix.framework.cache.JarRevision.<init>(JarRevision.java:82) > >> >> at > >> >> > >> >> > org.apache.felix.framework.cache.JarRevision.<init>(JarRevision.java:60) > >> >> at > >> >> > >> >> > org.apache.felix.framework.cache.BundleArchive.createRevisionFromLocation(BundleArchive.java:868) > >> >> at > >> >> > >> >> > org.apache.felix.framework.cache.BundleArchive.reviseInternal(BundleArchive.java:549) > >> >> at > >> >> > >> >> > org.apache.felix.framework.cache.BundleArchive.<init>(BundleArchive.java:148) > >> >> at > >> >> > >> >> > org.apache.felix.framework.cache.BundleCache.create(BundleCache.java:251) > >> >> at > >> >> org.apache.felix.framework.Felix.installBundle(Felix.java:2476) > >> >> ... 32 more > >> >> > >> >> > >> >> > >> >> On Mon, Jul 4, 2011 at 7:49 PM, Toni Menzel <t...@okidokiteam.com> > >> >> wrote: > >> >> > can you publish the exception in 2.1.0. > >> >> > I am close to publish 2.1.1 and would be glad to fix issues > >> >> > introduced > >> >> > in > >> >> > 2.1. > >> >> > > >> >> > On Mon, Jul 4, 2011 at 4:02 PM, Sanjeeb Sahoo <www.sa...@gmail.com > > > >> >> > wrote: > >> >> >> > >> >> >> I upgraded to 2.0.0 and it solved the problem. > >> >> >> > >> >> >> BTW, when I tried to upgrade to 2.1.0, I got some error related to > >> >> >> classpath protocol handler or something similar not found. I > didn't > >> >> >> have time to look into it further, so I am using 2.0.0 for the > time > >> >> >> being. > >> >> >> > >> >> >> Thanks > >> >> >> > >> >> >> On Mon, Jul 4, 2011 at 12:09 PM, Toni Menzel < > t...@okidokiteam.com> > >> >> >> wrote: > >> >> >> > Yes it has changed since 2.0-RC5. > >> >> >> > ( http://ops4j1.jira.com/browse/PAXEXAM-227 is your case ). > >> >> >> > Recommended: 2.1.0 > >> >> >> > > >> >> >> > On Mon, Jul 4, 2011 at 5:56 AM, Sanjeeb Sahoo > >> >> >> > <www.sa...@gmail.com> > >> >> >> > wrote: > >> >> >> >> > >> >> >> >> This is why I say pax-exam-extender embeds slf4j api: > >> >> >> >> > >> >> >> >> ss141213@Sahoo:/space/ss141213$ jar tf > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> > ~/.m2/repository/org/ops4j/pax/exam/pax-exam-extender-service/2.0.0-RC5/pax-exam-extender-service-2.0.0-RC5.jar > >> >> >> >> | grep slf > >> >> >> >> slf4j-api-1.6.1.jar > >> >> >> >> > >> >> >> >> ss141213@Sahoo:/space/ss141213$ java -jar > >> >> >> >> /home/ss141213/download/bnd-0.0.366.jar print -manifest > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> > ~/.m2/repository/org/ops4j/pax/exam/pax-exam-extender-service/2.0.0-RC5/pax-exam-extender-service-2.0.0-RC5.jar > >> >> >> >> | grep slf > >> >> >> >> Bundle-ClassPath > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> > >> >> >> >> > .,pax-swissbox-extender-1.3.1.jar,ops4j-base-monitors-1.2.3.jar,slf4j-api-1.6.1.jar,pax-swissbox-core-1.3.1.jar,pax-swissbox-lifecycle-1.3.1.jar,pax-exam-2.0.0-RC5.jar,pax-swissbox-optional-jcl-1.3.1.jar,ops4j-base-io-1.2.3.jar,ops4j-base-store-1.2.3.jar,ops4j-base-lang-1.2.3.jar > >> >> >> >> Ignore-Package org.slf4j.impl > >> >> >> >> > >> >> >> >> I don't know if things have changed since RC5. > >> >> >> >> > >> >> >> >> Thanks, > >> >> >> >> Sahoo > >> >> >> >> On Sun, Jul 3, 2011 at 10:55 PM, Toni Menzel > >> >> >> >> <t...@okidokiteam.com> > >> >> >> >> wrote: > >> >> >> >> > Pax Exam 2 artifacts do not embed slf4j api, can you give a > >> >> >> >> > pointer > >> >> >> >> > that > >> >> >> >> > leads to the evidence ? > >> >> >> >> > Instead, we do install some infrastructure bundles into the > >> >> >> >> > system. > >> >> >> >> > Those are: > >> >> >> >> > url( > >> >> >> >> > "link:classpath:META-INF/links/org.ops4j.pax.exam.rbc.link" > >> >> >> >> > ).startLevel( START_LEVEL_SYSTEM_BUNDLES ), > >> >> >> >> > url( > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > "link:classpath:META-INF/links/org.ops4j.pax.extender.service.link" > >> >> >> >> > ).startLevel( START_LEVEL_SYSTEM_BUNDLES ), > >> >> >> >> > url( "link:classpath:META-INF/links/org.osgi.compendium.link" > >> >> >> >> > ).startLevel( > >> >> >> >> > START_LEVEL_SYSTEM_BUNDLES ), > >> >> >> >> > url( > >> >> >> >> > > "link:classpath:META-INF/links/org.ops4j.pax.logging.api.link" > >> >> >> >> > ).startLevel( START_LEVEL_SYSTEM_BUNDLES ) }; > >> >> >> >> > As you see, pax logging api gets installed by default. You > >> >> >> >> > cannot > >> >> >> >> > change > >> >> >> >> > that currently (Pax Exam <= 2.1.0 ) > >> >> >> >> > On Sun, Jul 3, 2011 at 6:58 PM, Sanjeeb Sahoo > >> >> >> >> > <www.sa...@gmail.com> > >> >> >> >> > wrote: > >> >> >> >> >> > >> >> >> >> >> Pl. update this thread with your findings... > >> >> >> >> >> > >> >> >> >> >> Thanks, > >> >> >> >> >> Sahoo > >> >> >> >> >> > >> >> >> >> >> On Wed, Jun 29, 2011 at 9:03 AM, Sanjeeb Sahoo > >> >> >> >> >> <www.sa...@gmail.com> > >> >> >> >> >> wrote: > >> >> >> >> >> > any thoughts on this subject? > >> >> >> >> >> > > >> >> >> >> >> > On Wed, Jun 22, 2011 at 12:57 AM, Toni Menzel > >> >> >> >> >> > <t...@okidokiteam.com> > >> >> >> >> >> > wrote: > >> >> >> >> >> >> I will have a look at this in the evening. > >> >> >> >> >> >> I need to check what the exam-extender service > relationship > >> >> >> >> >> >> to > >> >> >> >> >> >> slf4j > >> >> >> >> >> >> was > >> >> >> >> >> >> like. I recall some solution that benefits exam tests > with > >> >> >> >> >> >> any > >> >> >> >> >> >> foreign > >> >> >> >> >> >> (or > >> >> >> >> >> >> none) slf4j/paxlogging. > >> >> >> >> >> >> > >> >> >> >> >> >> On Tue, Jun 21, 2011 at 7:49 PM, Niclas Hedhman > >> >> >> >> >> >> <nic...@hedhman.org> > >> >> >> >> >> >> wrote: > >> >> >> >> >> >>> > >> >> >> >> >> >>> Not sure about the details in this case, but in > principle; > >> >> >> >> >> >>> > >> >> >> >> >> >>> a. Do not include any logging APIs inside your bundle. > >> >> >> >> >> >>> b. Do not try to deploy any logging APIs as bundles on > >> >> >> >> >> >>> the > >> >> >> >> >> >>> OSGi > >> >> >> >> >> >>> framework. > >> >> >> >> >> >>> c. Import-Package the relevant logging APIs in your > >> >> >> >> >> >>> bundles > >> >> >> >> >> >>> that > >> >> >> >> >> >>> needs > >> >> >> >> >> >>> it. > >> >> >> >> >> >>> d. Deploy Pax Logging as the logging API and logging > back > >> >> >> >> >> >>> end > >> >> >> >> >> >>> solution. > >> >> >> >> >> >>> > >> >> >> >> >> >>> In nearly all cases you will be fine. If you only use > >> >> >> >> >> >>> SLF4J > >> >> >> >> >> >>> it > >> >> >> >> >> >>> is > >> >> >> >> >> >>> practically certain you will be ok. > >> >> >> >> >> >>> > >> >> >> >> >> >>> I am not competent in Pax Exam to know if it has any > nasty > >> >> >> >> >> >>> tricks > >> >> >> >> >> >>> up > >> >> >> >> >> >>> its sleeve for that not to work, but I assume not. > >> >> >> >> >> >>> > >> >> >> >> >> >>> > >> >> >> >> >> >>> Cheers > >> >> >> >> >> >>> Niclas > >> >> >> >> >> >>> > >> >> >> >> >> >>> On Tue, Jun 21, 2011 at 4:17 AM, Sanjeeb Sahoo > >> >> >> >> >> >>> <www.sa...@gmail.com> > >> >> >> >> >> >>> wrote: > >> >> >> >> >> >>> > Sorry, I was wrong when I said the probe bundle > embeded > >> >> >> >> >> >>> > slf4j > >> >> >> >> >> >>> > api. > >> >> >> >> >> >>> > It's the pax-exam-extender-service bundle which is > >> >> >> >> >> >>> > bundling > >> >> >> >> >> >>> > the > >> >> >> >> >> >>> > slf4j > >> >> >> >> >> >>> > api jar. How am I supposed to supply an slf4j binding > to > >> >> >> >> >> >>> > it? > >> >> >> >> >> >>> > Is > >> >> >> >> >> >>> > there > >> >> >> >> >> >>> > a fragment bundle made available in pax-exam project > >> >> >> >> >> >>> > that I > >> >> >> >> >> >>> > can > >> >> >> >> >> >>> > attach > >> >> >> >> >> >>> > to the pax-exam-extender-service bundle? > >> >> >> >> >> >>> > > >> >> >> >> >> >>> > Sahoo > >> >> >> >> >> >>> > On Tue, Jun 21, 2011 at 12:31 AM, Sanjeeb Sahoo > >> >> >> >> >> >>> > <www.sa...@gmail.com> > >> >> >> >> >> >>> > wrote: > >> >> >> >> >> >>> >> > >> >> >> >> >> >>> >> I see the probe bundle actually embeds slf4j api jar. > >> >> >> >> >> >>> >> How > >> >> >> >> >> >>> >> can > >> >> >> >> >> >>> >> I > >> >> >> >> >> >>> >> make > >> >> >> >> >> >>> >> it embed an implementation as well so that I can > avoid > >> >> >> >> >> >>> >> the > >> >> >> >> >> >>> >> NCDFE? > >> >> >> >> >> >>> > > >> >> >> >> >> >>> > _______________________________________________ > >> >> >> >> >> >>> > general mailing list > >> >> >> >> >> >>> > general@lists.ops4j.org > >> >> >> >> >> >>> > http://lists.ops4j.org/mailman/listinfo/general > >> >> >> >> >> >>> > > >> >> >> >> >> >>> > >> >> >> >> >> >>> > >> >> >> >> >> >>> > >> >> >> >> >> >>> -- > >> >> >> >> >> >>> Niclas Hedhman, Software Developer > >> >> >> >> >> >>> http://www.qi4j.org - New Energy for Java > >> >> >> >> >> >>> > >> >> >> >> >> >>> I live here; http://tinyurl.com/3xugrbk > >> >> >> >> >> >>> I work here; http://tinyurl.com/24svnvk > >> >> >> >> >> >>> I relax here; http://tinyurl.com/2cgsug > >> >> >> >> >> >>> > >> >> >> >> >> >>> _______________________________________________ > >> >> >> >> >> >>> general mailing list > >> >> >> >> >> >>> general@lists.ops4j.org > >> >> >> >> >> >>> http://lists.ops4j.org/mailman/listinfo/general > >> >> >> >> >> >> > >> >> >> >> >> >> > >> >> >> >> >> >> > >> >> >> >> >> >> -- > >> >> >> >> >> >> Toni Menzel Source > >> >> >> >> >> >> > >> >> >> >> >> >> > >> >> >> >> >> >> _______________________________________________ > >> >> >> >> >> >> general mailing list > >> >> >> >> >> >> general@lists.ops4j.org > >> >> >> >> >> >> http://lists.ops4j.org/mailman/listinfo/general > >> >> >> >> >> >> > >> >> >> >> >> >> > >> >> >> >> >> > > >> >> >> >> >> > >> >> >> >> >> _______________________________________________ > >> >> >> >> >> general mailing list > >> >> >> >> >> general@lists.ops4j.org > >> >> >> >> >> http://lists.ops4j.org/mailman/listinfo/general > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > -- > >> >> >> >> > Toni Menzel Source > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > _______________________________________________ > >> >> >> >> > general mailing list > >> >> >> >> > general@lists.ops4j.org > >> >> >> >> > http://lists.ops4j.org/mailman/listinfo/general > >> >> >> >> > > >> >> >> >> > > >> >> >> > > >> >> >> > > >> >> >> > > >> >> >> > -- > >> >> >> > Toni Menzel Source > >> >> >> > > >> >> >> > > >> >> > > >> >> > > >> >> > > >> >> > -- > >> >> > Toni Menzel Source > >> >> > > >> >> > > >> > > >> > > >> > > >> > -- > >> > Toni Menzel Source > >> > > >> > > > > > > > > > -- > > Toni Menzel Source > > > > > -- Toni Menzel Source <http://tonimenzel.com>
_______________________________________________ general mailing list general@lists.ops4j.org http://lists.ops4j.org/mailman/listinfo/general