Hello again,
I've discovered that the problem is only occurring while running Equinox
inside Eclipse IDE using both bundlerepository 2.0.8 and 2.0.9-SNAPSHOT.
I have setup an external environment and used the contents below in the
config.ini:
osgi.bundles=bundles/org.eclipse.equinox.console@start,
bundles/org.apache.felix.gogo.command@start,
bundles/org.apache.felix.gogo.shell@start,
bundles/org.apache.felix.gogo.runtime@start,
bundles/org.apache.felix.bundlerepository@start
osgi.noShutdown=true
eclipse.ignoreApp=true
Then I added a couple of R5 repositories with "obr:repos add
file:/repositoryR5.zip" and then called "obr:list" and the error is not
occurring at all...
Why would Java8 SDK's *method.getParameterAnnotations()* calls would
give different result while running at IDE? =-O
best,
Cristiano
On 17/04/2017 15:40, Cristiano Gavião wrote:
Hello,
Today I needed to use console in order to do some debug at IDE. So, I
started an OSGi Framework launch and used obr:list command from
bundlerepository bundle.
Strangely, I received this: "gogo: IllegalArgumentException: Cannot
coerce list() to any of [(boolean, String[])]"
I did some investigation and discovered that the cause of such error
is in org.apache.felix.gogo.runtime.Reflective class. Specifically here:
private static List<Object> transformParameters(Method method,
List<Object> in)
{
Annotation[][] pas = *method.getParameterAnnotations()*;
ArrayList<Object> out = new ArrayList<Object>();
The matrix returned by method.getParameterAnnotations() contains two
empty arrays ! So any transformation can be done and then the command
fails.
Has anyone seen an issue like that before ?
PS. I was not able to experiment with a more recent GoGo version
because since its 1.0.0 version, a different export-package is
provided (without 'status=provisional') and is not accepted by equinox.
best,
Cristiano
_______________________________________________
equinox-dev mailing list
equinox-dev@eclipse.org
To change your delivery options, retrieve your password, or unsubscribe from
this list, visit
https://dev.eclipse.org/mailman/listinfo/equinox-dev