Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

Extending the SCM command line

Is it possible to extend the SCM command line?

I poked around in the SDK and I think I figured out the proper extension point & Java interface (ISubcommand) but when I created a "Hello World" subcommand & dropped it into the plugins directory it wasn't recognized.

Anything special I need to do here?

0 votes


Accepted answer

Permanent link
You could also try running with -clean, which forces Equinox (the Eclipse OSGi implementation) to recompute its picture of which plugins are installed. This is only needed the first time after adding/removing plugins/features.
Jeff Care selected this answer as the correct answer

1 vote

Comments

-clean did the trick

Thanks much.

You could also try running with -clean, which forces Equinox (the Eclipse OSGi implementation) to recompute its picture of which plugins are installed. This is only needed the first time after adding/removing plugins/features.


5 other answers

Permanent link
Note that the instance data location (aka Eclipse workspace) is different from the directory used to load your source (i.e. the sandbox). As far as the SCM CLI goes, it's mainly used just to store preferences.

I suggest looking at the extensions for the existing SCM CLI commands (in /com.ibm.team.filesystem.cli.client/plugin.xml) and use the same initpolicy as another command that's most similar to yours as far preference usage goes.

For starters, maybe try initpolicy="scratch".

1 vote


Permanent link
Welcome to the wonderful world of OSGi. =)

The CLI isn't intended for customer extension, but it's possible. It sounds like OSGi doesn't know that the plugin is there. Try putting it into the dropins/ folder.

Another alternative is to start the CLI with '-console' and '-consoleLog' in the commandline args. Stick a breakpoint on SubcommandLauncher#run() with Eclipse. When the breakpoint it hit, you should have access to an OSGi prompt, so you can query about your plugin to get the word directly from the horse's mouth.

0 votes


Permanent link
I got a little further using -clean to get my plugin recognized but now I've hit another problem (see full exception trace below).

I've tried everything I can think of: adding activators, adding org.eclipse.core.resources as a dependency, removing org.eclipse.core.resources as a dependency, minimizing dependencies, etc.

How do the standard subcommands avoid this? Am I missing a dependency?

!SESSION 2011-04-12 14:13:42.968 -----------------------------------------------

eclipse.buildId=unknown
java.fullversion=JRE 1.6.0 IBM J9 2.4 Windows XP x86-32 jvmwi3260sr8ifx-20100609_59383 (JIT enabled, AOT enabled)
J9VM - 20100609_059383
JIT - r9_20100401_15339ifx2
GC - 20100308_AA
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Framework arguments: mrb_mapsnapshot -r philly
Command-line arguments: -os win32 -ws win32 -arch x86 -data @noDefault mrb_mapsnapshot -r philly

!ENTRY org.eclipse.osgi 2 1 2011-04-12 14:13:43.968
!MESSAGE NLS unused message: DaemonStartCmd_NICE_NAME in: com.ibm.team.filesystem.cli.core.internal.messages

!ENTRY org.eclipse.osgi 4 0 2011-04-12 14:13:44.671
!MESSAGE An error occurred while automatically activating bundle org.eclipse.core.resources (197).
!STACK 0
org.osgi.framework.BundleException: Exception in org.eclipse.core.resources.ResourcesPlugin.start() of bundle org.eclipse.core.resources.
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:806)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:408)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:454)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
at org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation.start(EcorePlugin.java:520)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(AccessController.java:251)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:408)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:454)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
at com.ibm.team.repository.common.UUID.generate(UUID.java:51)
at com.ibm.team.repository.transport.client.CertificateStore.computeAlias(CertificateStore.java:110)
at com.ibm.team.repository.transport.client.CertificateStore.enterCertificate(CertificateStore.java:166)
at com.ibm.team.repository.transport.client.CertificateStore.enterCertificates(CertificateStore.java:183)
at com.ibm.team.repository.transport.client.CertificateStore.loadCertificates(CertificateStore.java:215)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.addCertificatesFromStore(SharedTrustStoreProvider.java:119)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.loadSystemCertificates(SharedTrustStoreProvider.java:101)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.buildRuntimeTrustStore(SharedTrustStoreProvider.java:80)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.<init>(SharedTrustStoreProvider.java:133)
at com.ibm.team.repository.transport.client.ValidatingX509TrustManager.<init>(ValidatingX509TrustManager.java:79)
at com.ibm.team.repository.transport.client.SecureInterruptableSocketFactory.<init>(SecureInterruptableSocketFactory.java:117)
at com.ibm.team.repository.transport.client.RemoteTeamServer.buildHostConfiguration(RemoteTeamServer.java:234)
at com.ibm.team.repository.transport.client.RemoteTeamServer.ensureInitialized(RemoteTeamServer.java:208)
at com.ibm.team.repository.transport.client.RemoteTeamServer.setCredentials(RemoteTeamServer.java:462)
at com.ibm.team.repository.client.internal.TeamRepository.<init>(TeamRepository.java:383)
at com.ibm.team.repository.client.internal.TeamRepositoryService.createSharedTeamRepository(TeamRepositoryService.java:400)
at com.ibm.team.repository.client.internal.TeamRepositoryService.getTeamRepository(TeamRepositoryService.java:111)
at com.ibm.team.repository.client.internal.TeamRepositoryService.getTeamRepository(TeamRepositoryService.java:130)
at com.ibm.team.filesystem.cli.core.util.RepoUtil.login(RepoUtil.java:398)
at com.ibm.mrbuild.rtc.cli.MrBuildSubcommand.run(MrBuildSubcommand.java:53)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:622)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.doStart(SubcommandLauncher.java:365)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:148)
at com.ibm.team.filesystem.cli.core.internal.Application.start(Application.java:37)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:600)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Caused by: java.lang.IllegalStateException: The instance data location has not been specified yet.
at org.eclipse.core.internal.runtime.DataArea.assertLocationInitialized(DataArea.java:54)
at org.eclipse.core.internal.runtime.DataArea.getStateLocation(DataArea.java:120)
at org.eclipse.core.internal.runtime.InternalPlatform.getStateLocation(InternalPlatform.java:606)
at org.eclipse.core.runtime.Plugin.getStateLocation(Plugin.java:312)
at org.eclipse.core.internal.resources.LocalMetaArea.<init>(LocalMetaArea.java:53)
at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:371)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(AccessController.java:251)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
... 68 more
Root exception:
java.lang.IllegalStateException: The instance data location has not been specified yet.
at org.eclipse.core.internal.runtime.DataArea.assertLocationInitialized(DataArea.java:54)
at org.eclipse.core.internal.runtime.DataArea.getStateLocation(DataArea.java:120)
at org.eclipse.core.internal.runtime.InternalPlatform.getStateLocation(InternalPlatform.java:606)
at org.eclipse.core.runtime.Plugin.getStateLocation(Plugin.java:312)
at org.eclipse.core.internal.resources.LocalMetaArea.<init>(LocalMetaArea.java:53)
at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:371)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(AccessController.java:251)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:408)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:454)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
at org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation.start(EcorePlugin.java:520)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(AccessController.java:251)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:408)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:454)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
at com.ibm.team.repository.common.UUID.generate(UUID.java:51)
at com.ibm.team.repository.transport.client.CertificateStore.computeAlias(CertificateStore.java:110)
at com.ibm.team.repository.transport.client.CertificateStore.enterCertificate(CertificateStore.java:166)
at com.ibm.team.repository.transport.client.CertificateStore.enterCertificates(CertificateStore.java:183)
at com.ibm.team.repository.transport.client.CertificateStore.loadCertificates(CertificateStore.java:215)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.addCertificatesFromStore(SharedTrustStoreProvider.java:119)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.loadSystemCertificates(SharedTrustStoreProvider.java:101)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.buildRuntimeTrustStore(SharedTrustStoreProvider.java:80)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.<init>(SharedTrustStoreProvider.java:133)
at com.ibm.team.repository.transport.client.ValidatingX509TrustManager.<init>(ValidatingX509TrustManager.java:79)
at com.ibm.team.repository.transport.client.SecureInterruptableSocketFactory.<init>(SecureInterruptableSocketFactory.java:117)
at com.ibm.team.repository.transport.client.RemoteTeamServer.buildHostConfiguration(RemoteTeamServer.java:234)
at com.ibm.team.repository.transport.client.RemoteTeamServer.ensureInitialized(RemoteTeamServer.java:208)
at com.ibm.team.repository.transport.client.RemoteTeamServer.setCredentials(RemoteTeamServer.java:462)
at com.ibm.team.repository.client.internal.TeamRepository.<init>(TeamRepository.java:383)
at com.ibm.team.repository.client.internal.TeamRepositoryService.createSharedTeamRepository(TeamRepositoryService.java:400)
at com.ibm.team.repository.client.internal.TeamRepositoryService.getTeamRepository(TeamRepositoryService.java:111)
at com.ibm.team.repository.client.internal.TeamRepositoryService.getTeamRepository(TeamRepositoryService.java:130)
at com.ibm.team.filesystem.cli.core.util.RepoUtil.login(RepoUtil.java:398)
at com.ibm.mrbuild.rtc.cli.MrBuildSubcommand.run(MrBuildSubcommand.java:53)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:622)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.doStart(SubcommandLauncher.java:365)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:148)
at com.ibm.team.filesystem.cli.core.internal.Application.start(Application.java:37)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:600)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)

!ENTRY org.eclipse.osgi 4 0 2011-04-12 14:13:44.671
!MESSAGE An error occurred while automatically activating bundle org.eclipse.emf.ecore (245).
!STACK 0
org.osgi.framework.BundleException: Exception in org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation.start() of bundle org.eclipse.emf.ecore.
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:806)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:408)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:454)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
at com.ibm.team.repository.common.UUID.generate(UUID.java:51)
at com.ibm.team.repository.transport.client.CertificateStore.computeAlias(CertificateStore.java:110)
at com.ibm.team.repository.transport.client.CertificateStore.enterCertificate(CertificateStore.java:166)
at com.ibm.team.repository.transport.client.CertificateStore.enterCertificates(CertificateStore.java:183)
at com.ibm.team.repository.transport.client.CertificateStore.loadCertificates(CertificateStore.java:215)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.addCertificatesFromStore(SharedTrustStoreProvider.java:119)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.loadSystemCertificates(SharedTrustStoreProvider.java:101)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.buildRuntimeTrustStore(SharedTrustStoreProvider.java:80)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.<init>(SharedTrustStoreProvider.java:133)
at com.ibm.team.repository.transport.client.ValidatingX509TrustManager.<init>(ValidatingX509TrustManager.java:79)
at com.ibm.team.repository.transport.client.SecureInterruptableSocketFactory.<init>(SecureInterruptableSocketFactory.java:117)
at com.ibm.team.repository.transport.client.RemoteTeamServer.buildHostConfiguration(RemoteTeamServer.java:234)
at com.ibm.team.repository.transport.client.RemoteTeamServer.ensureInitialized(RemoteTeamServer.java:208)
at com.ibm.team.repository.transport.client.RemoteTeamServer.setCredentials(RemoteTeamServer.java:462)
at com.ibm.team.repository.client.internal.TeamRepository.<init>(TeamRepository.java:383)
at com.ibm.team.repository.client.internal.TeamRepositoryService.createSharedTeamRepository(TeamRepositoryService.java:400)
at com.ibm.team.repository.client.internal.TeamRepositoryService.getTeamRepository(TeamRepositoryService.java:111)
at com.ibm.team.repository.client.internal.TeamRepositoryService.getTeamRepository(TeamRepositoryService.java:130)
at com.ibm.team.filesystem.cli.core.util.RepoUtil.login(RepoUtil.java:398)
at com.ibm.mrbuild.rtc.cli.MrBuildSubcommand.run(MrBuildSubcommand.java:53)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:622)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.doStart(SubcommandLauncher.java:365)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:148)
at com.ibm.team.filesystem.cli.core.internal.Application.start(Application.java:37)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:600)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Caused by: java.lang.NoClassDefFoundError: org.eclipse.core.resources.ResourcesPlugin
at org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation.start(EcorePlugin.java:520)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(AccessController.java:251)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
... 50 more
Caused by: org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter$TerminatingClassNotFoundException: An error occurred while automatically activating bundle org.eclipse.core.resources (197).
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:125)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:454)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
... 54 more
Caused by: org.osgi.framework.BundleException: Exception in org.eclipse.core.resources.ResourcesPlugin.start() of bundle org.eclipse.core.resources.
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:806)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:408)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111)
... 63 more
Caused by: java.lang.IllegalStateException: The instance data location has not been specified yet.
at org.eclipse.core.internal.runtime.DataArea.assertLocationInitialized(DataArea.java:54)
at org.eclipse.core.internal.runtime.DataArea.getStateLocation(DataArea.java:120)
at org.eclipse.core.internal.runtime.InternalPlatform.getStateLocation(InternalPlatform.java:606)
at org.eclipse.core.runtime.Plugin.getStateLocation(Plugin.java:312)
at org.eclipse.core.internal.resources.LocalMetaArea.<init>(LocalMetaArea.java:53)
at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:371)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(AccessController.java:251)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
... 68 more
Root exception:
java.lang.NoClassDefFoundError: org.eclipse.core.resources.ResourcesPlugin
at org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation.start(EcorePlugin.java:520)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(AccessController.java:251)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:408)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:454)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
at com.ibm.team.repository.common.UUID.generate(UUID.java:51)
at com.ibm.team.repository.transport.client.CertificateStore.computeAlias(CertificateStore.java:110)
at com.ibm.team.repository.transport.client.CertificateStore.enterCertificate(CertificateStore.java:166)
at com.ibm.team.repository.transport.client.CertificateStore.enterCertificates(CertificateStore.java:183)
at com.ibm.team.repository.transport.client.CertificateStore.loadCertificates(CertificateStore.java:215)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.addCertificatesFromStore(SharedTrustStoreProvider.java:119)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.loadSystemCertificates(SharedTrustStoreProvider.java:101)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.buildRuntimeTrustStore(SharedTrustStoreProvider.java:80)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.<init>(SharedTrustStoreProvider.java:133)
at com.ibm.team.repository.transport.client.ValidatingX509TrustManager.<init>(ValidatingX509TrustManager.java:79)
at com.ibm.team.repository.transport.client.SecureInterruptableSocketFactory.<init>(SecureInterruptableSocketFactory.java:117)
at com.ibm.team.repository.transport.client.RemoteTeamServer.buildHostConfiguration(RemoteTeamServer.java:234)
at com.ibm.team.repository.transport.client.RemoteTeamServer.ensureInitialized(RemoteTeamServer.java:208)
at com.ibm.team.repository.transport.client.RemoteTeamServer.setCredentials(RemoteTeamServer.java:462)
at com.ibm.team.repository.client.internal.TeamRepository.<init>(TeamRepository.java:383)
at com.ibm.team.repository.client.internal.TeamRepositoryService.createSharedTeamRepository(TeamRepositoryService.java:400)
at com.ibm.team.repository.client.internal.TeamRepositoryService.getTeamRepository(TeamRepositoryService.java:111)
at com.ibm.team.repository.client.internal.TeamRepositoryService.getTeamRepository(TeamRepositoryService.java:130)
at com.ibm.team.filesystem.cli.core.util.RepoUtil.login(RepoUtil.java:398)
at com.ibm.mrbuild.rtc.cli.MrBuildSubcommand.run(MrBuildSubcommand.java:53)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:622)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.doStart(SubcommandLauncher.java:365)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:148)
at com.ibm.team.filesystem.cli.core.internal.Application.start(Application.java:37)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:600)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Caused by: org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter$TerminatingClassNotFoundException: An error occurred while automatically activating bundle org.eclipse.core.resources (197).
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:125)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:454)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
... 54 more
Caused by: org.osgi.framework.BundleException: Exception in org.eclipse.core.resources.ResourcesPlugin.start() of bundle org.eclipse.core.resources.
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:806)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:408)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111)
... 63 more
Caused by: java.lang.IllegalStateException: The instance data location has not been specified yet.
at org.eclipse.core.internal.runtime.DataArea.assertLocationInitialized(DataArea.java:54)
at org.eclipse.core.internal.runtime.DataArea.getStateLocation(DataArea.java:120)
at org.eclipse.core.internal.runtime.InternalPlatform.getStateLocation(InternalPlatform.java:606)
at org.eclipse.core.runtime.Plugin.getStateLocation(Plugin.java:312)
at org.eclipse.core.internal.resources.LocalMetaArea.<init>(LocalMetaArea.java:53)
at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:371)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(AccessController.java:251)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
... 68 more

!ENTRY org.eclipse.osgi 4 0 2011-04-12 14:13:44.765
!MESSAGE Application error
!STACK 1
java.lang.RuntimeException: java.lang.NoClassDefFoundError: org.eclipse.emf.ecore.util.EcoreUtil
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:165)
at com.ibm.team.filesystem.cli.core.internal.Application.start(Application.java:37)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:48)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:600)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514)
at org.eclipse.equinox.launcher.Main.run(Main.java:1311)
Caused by: java.lang.NoClassDefFoundError: org.eclipse.emf.ecore.util.EcoreUtil
at com.ibm.team.repository.common.UUID.generate(UUID.java:51)
at com.ibm.team.repository.transport.client.CertificateStore.computeAlias(CertificateStore.java:110)
at com.ibm.team.repository.transport.client.CertificateStore.enterCertificate(CertificateStore.java:166)
at com.ibm.team.repository.transport.client.CertificateStore.enterCertificates(CertificateStore.java:183)
at com.ibm.team.repository.transport.client.CertificateStore.loadCertificates(CertificateStore.java:215)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.addCertificatesFromStore(SharedTrustStoreProvider.java:119)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.loadSystemCertificates(SharedTrustStoreProvider.java:101)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.buildRuntimeTrustStore(SharedTrustStoreProvider.java:80)
at com.ibm.team.repository.transport.client.SharedTrustStoreProvider.<init>(SharedTrustStoreProvider.java:133)
at com.ibm.team.repository.transport.client.ValidatingX509TrustManager.<init>(ValidatingX509TrustManager.java:79)
at com.ibm.team.repository.transport.client.SecureInterruptableSocketFactory.<init>(SecureInterruptableSocketFactory.java:117)
at com.ibm.team.repository.transport.client.RemoteTeamServer.buildHostConfiguration(RemoteTeamServer.java:234)
at com.ibm.team.repository.transport.client.RemoteTeamServer.ensureInitialized(RemoteTeamServer.java:208)
at com.ibm.team.repository.transport.client.RemoteTeamServer.setCredentials(RemoteTeamServer.java:462)
at com.ibm.team.repository.client.internal.TeamRepository.<init>(TeamRepository.java:383)
at com.ibm.team.repository.client.internal.TeamRepositoryService.createSharedTeamRepository(TeamRepositoryService.java:400)
at com.ibm.team.repository.client.internal.TeamRepositoryService.getTeamRepository(TeamRepositoryService.java:111)
at com.ibm.team.repository.client.internal.TeamRepositoryService.getTeamRepository(TeamRepositoryService.java:130)
at com.ibm.team.filesystem.cli.core.util.RepoUtil.login(RepoUtil.java:398)
at com.ibm.mrbuild.rtc.cli.MrBuildSubcommand.run(MrBuildSubcommand.java:53)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:622)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.doStart(SubcommandLauncher.java:365)
at com.ibm.team.filesystem.cli.core.internal.SubcommandLauncher.run(SubcommandLauncher.java:148)
... 13 more
Caused by: org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter$TerminatingClassNotFoundException: An error occurred while automatically activating bundle org.eclipse.emf.ecore (245).
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:125)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:454)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
... 36 more
Caused by: org.osgi.framework.BundleException: Exception in org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation.start() of bundle org.eclipse.emf.ecore.
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:806)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:408)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111)
... 45 more
Caused by: java.lang.NoClassDefFoundError: org.eclipse.core.resources.ResourcesPlugin
at org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation.start(EcorePlugin.java:520)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(AccessController.java:251)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
... 50 more
Caused by: org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter$TerminatingClassNotFoundException: An error occurred while automatically activating bundle org.eclipse.core.resources (197).
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:125)
at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:211)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:381)
at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33)
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:454)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
at java.lang.ClassLoader.loadClass(ClassLoader.java:619)
... 54 more
Caused by: org.osgi.framework.BundleException: Exception in org.eclipse.core.resources.ResourcesPlugin.start() of bundle org.eclipse.core.resources.
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:806)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:755)
at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:352)
at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:280)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:408)
at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111)
... 63 more
Caused by: java.lang.IllegalStateException: The instance data location has not been specified yet.
at org.eclipse.core.internal.runtime.DataArea.assertLocationInitialized(DataArea.java:54)
at org.eclipse.core.internal.runtime.DataArea.getStateLocation(DataArea.java:120)
at org.eclipse.core.internal.runtime.InternalPlatform.getStateLocation(InternalPlatform.java:606)
at org.eclipse.core.runtime.Plugin.getStateLocation(Plugin.java:312)
at org.eclipse.core.internal.resources.LocalMetaArea.<init>(LocalMetaArea.java:53)
at org.eclipse.core.resources.ResourcesPlugin.start(ResourcesPlugin.java:371)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:783)
at java.security.AccessController.doPrivileged(AccessController.java:251)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:774)
... 68 more

!ENTRY org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE The following is a complete list of bundles which are not resolved, see the prior log entry for the root cause if it exists:
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.aix.ppc64_1.0.0.200911201639 [166] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.aix.ppc_1.0.0.R35x_v20091203-1235 [167] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.linux.ppc_1.0.100.v20080604-1400 [168] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.linux.s390_1.1.0.v20101110_2353 [169] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.linux.x86.nl1_1.3.0.v201002231411 [170] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.linux.x86.nl2_1.3.0.v201002231411 [171] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.linux.x86_1.3.0.R35x_v20091203-1235 [172] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.linux.x86_64_1.1.0.R35x_v20091203-1235 [173] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.macosx_1.2.0.R35x_v20091203-1235 [174] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.solaris.sparcv9_1.1.0.v20101110_2353 [177] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.solaris.sparc_1.1.0.R35x_v20091203-1235 [178] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.zos.s390x_1.1.0.v20101110_2353 [182] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.core.filesystem.zos.s390_1.1.0.v20101110_2353 [183] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.equinox.launcher.gtk.linux.x86_1.0.200.v20090520 [252] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.swt.gtk.linux.x86.nl1_3.5.2.v201002231411 [304] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.swt.gtk.linux.x86.nl2_3.5.2.v201002231411 [305] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2 0 2011-04-12 14:13:44.859
!MESSAGE Bundle org.eclipse.swt.gtk.linux.x86_3.5.2.v3557f [306] was not resolved.

0 votes


Permanent link
The failure:
java.lang.IllegalStateException: The instance data location has not been specified yet.

occurs when Eclipse tries to access the instance data location, aka the Eclipse workspace location, when it has not been set. Normally this defaults to the 'workspace' directory under the current working directory, but the SCM CLI disables that with the "-data @noDefault" argument specified in the scm.sh script or the scm.ini file (used when running the scm executable).

The SCM CLI sets the location by calling:
com.ibm.team.filesystem.cli.core.util.SubcommandUtil.initializeEclipseWorkspaceRoot(File)

Normally this is done in:
com.ibm.team.filesystem.cli.core.internal.SubcommandDefinition.initialize(IExecutionContext, UserConfigDir, ICommandLine, ICommandLine)

But whether it does so depends on the policy for the subcommand, as indicated by:
com.ibm.team.filesystem.cli.core.internal.SubcommandDefinition.getInitPolicy()


The policy is obtained from the extension for the subcommand. The code for gertInitPolicy() is:

protected Policy getInitPolicy() throws FileSystemException {
String policy = getAttr(Constants.PT_ATTR_INIT_POLICY);

if ("none".equals(policy)) { //$NON-NLS-1$
return Policy.NONE;
}
else if ("ancestor".equals(policy)) { //$NON-NLS-1$
return Policy.ANCESTOR;
}
else if ("argument".equals(policy)) { //$NON-NLS-1$
return Policy.ARGUMENT;
}
else if ("argument/ancestor".equals(policy)) { //$NON-NLS-1$
return Policy.ARG_ANC;
}
else if ("uri/argument/ancestor".equals(policy)) { //$NON-NLS-1$
return Policy.URI_ARG_ANC;
}
else if ("scratch".equals(policy)) { //$NON-NLS-1$
return Policy.SCRATCH;
}
else if ("argument-create".equals(policy)) { //$NON-NLS-1$
return Policy.ARGUMENT_CREATE;
}
else {
throw StatusHelper.internalError(NLS.bind(Messages.SubcommandDefinition_1, new Object[] {getFullSubcommandName(), ext.getContributor().getName(), policy}));
}
}


Unfortunately, I'm not sure what those different policies actually mean. Evan or someone else from the CLI team would need to clarify.

0 votes


Permanent link
Great suggestion: list snapshots is close enough to what we're going (at least as far as logging in to the repo) & it uses "scratch".

I was using "none" initially (copied the plugin.xml stanza from version I think). I changed to scratch & it's all working now, thanks very much.

Note that the instance data location (aka Eclipse workspace) is different from the directory used to load your source (i.e. the sandbox). As far as the SCM CLI goes, it's mainly used just to store preferences.

I suggest looking at the extensions for the existing SCM CLI commands (in /com.ibm.team.filesystem.cli.client/plugin.xml) and use the same initpolicy as another command that's most similar to yours as far preference usage goes.

For starters, maybe try initpolicy="scratch".

0 votes

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details
× 10,957

Question asked: Apr 07 '11, 6:27 p.m.

Question was seen: 7,990 times

Last updated: Jun 13 '14, 10:34 a.m.

Confirmation Cancel Confirm