[
https://issues.apache.org/jira/browse/FELIX-723?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Stuart McCulloch reassigned FELIX-723:
--------------------------------------
Assignee: Peter Kriens
Hi Peter - do you have any time to look into this? it's either a bad classfile
or a bug in the BND classfile parser...
> ArrayIndexOutOfBoundsException in aQute.lib.osgi.Clazz.parseClassFile
> ---------------------------------------------------------------------
>
> Key: FELIX-723
> URL: https://issues.apache.org/jira/browse/FELIX-723
> Project: Felix
> Issue Type: Bug
> Components: Maven Bundle Plugin
> Environment: MacOSX
> Reporter: Brad Cox
> Assignee: Peter Kriens
>
> > I integrated the recommended changes (pom enclosed below) but that
> > com.ibm.icu error turned up again. Bad chinese locale class out there
> > somewhere? com/ibm/icu/impl/data/LocaleElements_zh__PINYIN.class.
> Seems to be triggered by
> <Embed-Dependency>*;scope=compile|runtime;inline=true</Embed-Dependency>.
> At least removing that eliminates the symptom.
> I'll work towards a small test case once I understand this a bit better.
> This bug is ephemeral so I want to capture what I have first.
> I tried erasing it in .m2 but that didn't help. POM and stacktrace below
> <?xml version="1.0" encoding="UTF-8"?>
> > <project
> > xmlns="http://maven.apache.org/POM/4.0.0"
> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> > xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
> > http://maven.apache.org/maven-v4_0_0.xsd"
> > > >
> > <modelVersion>4.0.0</modelVersion>
> > <groupId>soakit</groupId>
> > <artifactId>soakit.core</artifactId>
> > <version>1.0-SNAPSHOT</version>
> > <name>soakit.core</name>
> > <description>SoaKit Core Abstraction Layer. Defines interfaces and
> > abstract classes for the components defined in sub-modules. Provides a
> > service (factory class) for defining soakit composites with an XML
> > configuration file.</description>
> >
> > <packaging>bundle</packaging>
> >
> > <parent>
> > <groupId>soakit</groupId>
> > <artifactId>soakit</artifactId>
> > <version>1.0-SNAPSHOT</version>
> > </parent>
> >
> > <dependencies>
> > <dependency>
> > <groupId>commons-collections</groupId>
> > <artifactId>commons-collections</artifactId>
> > <version>3.2</version>
> > </dependency>
> > <dependency>
> > <groupId>jdom</groupId>
> > <artifactId>jdom</artifactId>
> > <version>1.0</version>
> > </dependency>
> > <!--
> > <dependency>
> > <groupId>javax.xml.parsers</groupId>
> > <artifactId>jaxp-api</artifactId>
> > <version>1.4</version>
> > </dependency>
> > <dependency>
> > <groupId>javax.xml.ws</groupId>
> > <artifactId>jaxws-api</artifactId>
> > <version>2.1-1</version>
> > </dependency>
> > <dependency>
> > <groupId>xerces</groupId>
> > <artifactId>xercesImpl</artifactId>
> > <version>2.8.1</version>
> > </dependency>
> > <dependency>
> > <groupId>org.eclipse</groupId>
> > <artifactId>osgi</artifactId>
> > <version>3.4.0.v20080605-1900</version>
> > </dependency>
> > <dependency>
> > <groupId>jaxen</groupId>
> > <artifactId>jaxen</artifactId>
> > <version>1.1-beta-9</version>
> > </dependency>
> > -->
> > </dependencies>
> >
> > <build>
> > <resources>
> > <resource>
> > <directory>src/main/resources</directory>
> > </resource>
> > <resource>
> > <directory>.</directory>
> > <includes>
> > <include>plugin.xml</include>
> > </includes>
> > </resource>
> > </resources>
> >
> > <plugins>
> > <plugin>
> > <artifactId>maven-eclipse-plugin</artifactId>
> > <configuration>
> > <pde>true</pde>
> > </configuration>
> > </plugin>
> > <plugin>
> > <groupId>org.apache.felix</groupId>
> > <artifactId>maven-bundle-plugin</artifactId>
> > <version>1.4.3</version>
> > <extensions>true</extensions>
> > <configuration>
> > <unpackBundle>true</unpackBundle>
> > <manifestLocation>META-INF</manifestLocation>
> > <instructions>
> > <Bundle-Version>${pom.version}</Bundle-Version>
> > <Bundle-Name>${artifactId}</Bundle-Name>
> > <Bundle-SymbolicName>${artifactId}</Bundle-SymbolicName>
> > <Bundle-Description>Soakit
> > Core Bundle</Bundle-Description>
> >
> > <Bundle-Activator>com.gestalt.soakit.core.CoreActivator</Bundle-Activator>
> >
> > <Embed-Dependency>*;scope=compile|runtime;inline=true</Embed-Dependency>
> >
> > <Embed-Transitive>true</Embed-Transitive>
> > <Embed-Directory>target/dependency</Embed-Directory>
> >
> > <Bundle-RequiredExecutionEnvironment>J2SE-1.5</Bundle-RequiredExecutionEnvironment>
> > <Import-Package>
> > *,
> > <!--
> >
> > org.apache.commons.collections.*;version="3.2"
> >
> > org.apache.commons.collections.iterators.*;version="3.2",
> >
> > org.jdom;version="1.0",
> >
> > org.jdom.*;version="1.0",
> >
> > org.jdom.input.*;version="1.0",
> >
> > org.jdom.output.*;version="1.0",
> >
> > org.apache.xerces.parsers,
> > javax.*,
> > javax.jws.*,
> > javax.xml.bind.*,
> > javax.annotation.*,
> > javax.xml.soap.*,
> > javax.xml.stream.*,
> > javax.activation.*,
> > -->
> > </Import-Package>
> > <Export-Package>
> > .,
> >
> > com.gestalt.soakit.core.*,
> >
> > org.jdom;version="1.0",
> >
> > org.jdom.*;version="1.0",
> >
> > org.jdom.input.*;version="1.0",
> >
> > org.jdom.output.*;version="1.0",
> > <!--
> >
> > org.apache.commons.collections.*;version="3.2",
> >
> > org.apache.commons.collections.iterators.*;version="3.2",
> >
> > org.apache.xerces.parsers.*,
> > javax.*,
> > javax.jws.*,
> > javax.xml.bind,
> > javax.annotation,
> > javax.xml.soap,
> > javax.xml.stream,
> > javax.activation,
> >
> > -->
> > </Export-Package>
> > </instructions>
> > </configuration>
> > </plugin>
> > <!--
> > <plugin>
> > <groupId>org.apache.maven.plugins</groupId>
> >
> > <artifactId>maven-eclipse-plugin</artifactId>
> > <configuration>
> >
> > <projectNameTemplate>[artifactId]-[version]</projectNameTemplate>
> > <wtpmanifest>true</wtpmanifest>
> >
> > <wtpapplicationxml>true</wtpapplicationxml>
> > <wtpversion>2.0</wtpversion>
> >
> > <manifest>${basedir}/src/main/resources/META-INF/MANIFEST.MF</manifest>
> > </configuration>
> > </plugin>
> > -->
> > </plugins>
> > <extensions>
> > </extensions>
> > </build>
> > </project>
> > >
> > > To reproduce, with the enclosed pom.
> > > mvn clean
> > > mvn pde:clean -Dverbose # to be "safe"
> > > mvn eclipse:clean -Dverbose # to be "safe"
> > > mvn -e install
> > >
> > > + Error stacktraces are turned on.
> > > [INFO] Scanning for projects...
> > > [INFO] Reactor build order:
> > > [INFO] soakit root pom
> > > [INFO] soakit.core
> > > [INFO] soakit.main
> > > [INFO] soakit.port
> > > [INFO] soakit.port.file
> > > [INFO] soakit.port.http
> > > [INFO] soakit.transform
> > > [INFO] soakit.transform.identity
> > > [INFO] soakit.transform.log
> > > [INFO] soakit.transform.pep
> > > [INFO] soakit.transform.xsl
> > > [INFO] soakit.component
> > > [INFO] soakit.test
> > > [INFO]
> > > ------------------------------------------------------------------------
> > > [INFO] Building soakit root pom
> > > [INFO] task-segment: [install]
> > > [INFO]
> > > ------------------------------------------------------------------------
> > > [INFO] [site:attach-descriptor]
> > > [INFO] [install:install]
> > > [INFO] Installing /SoftwareDevelopment/soakit/pom.xml to
> > > /Users/bradcox/.m2/repository/soakit/soakit/1.0-SNAPSHOT/soakit-1.0-SNAPSHOT.pom
> > > [INFO]
> > > ------------------------------------------------------------------------
> > > [INFO] Building soakit.core
> > > [INFO] task-segment: [install]
> > > [INFO]
> > > ------------------------------------------------------------------------
> > > [INFO] [resources:resources]
> > > [INFO] Using default encoding to copy filtered resources.
> > > [INFO] [compiler:compile]
> > > [INFO] Nothing to compile - all classes are up to date
> > > [INFO] [resources:testResources]
> > > [INFO] Using default encoding to copy filtered resources.
> > > [INFO] [compiler:testCompile]
> > > [INFO] No sources to compile
> > > [INFO] [surefire:test]
> > > [INFO] No tests to run.
> > > [INFO] [bundle:bundle]
> > > java.lang.ArrayIndexOutOfBoundsException: 60
> > > at aQute.lib.osgi.Clazz.parseClassFile(Clazz.java:130)
> > > at aQute.lib.osgi.Clazz.<init>(Clazz.java:65)
> > > at aQute.lib.osgi.Processor.analyzeJar(Processor.java:159)
> > > at
> > > aQute.lib.osgi.Processor.analyzeBundleClasspath(Processor.java:77)
> > > at aQute.lib.osgi.Analyzer.analyze(Analyzer.java:194)
> > > at aQute.lib.osgi.Builder.analyze(Builder.java:95)
> > > at aQute.lib.osgi.Analyzer.calcManifest(Analyzer.java:293)
> > > at aQute.lib.osgi.Builder.build(Builder.java:45)
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.buildOSGiBundle(BundlePlugin.java:391)
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:273)
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:227)
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:218)
> > > at
> > > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:499)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:478)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
> > > at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
> > > at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
> > > at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
> > > 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:585)
> > > at
> > > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> > > at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> > > at
> > > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> > > at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> > > java.lang.ArrayIndexOutOfBoundsException: 60
> > > at aQute.lib.osgi.Clazz.parseClassFile(Clazz.java:130)
> > > at aQute.lib.osgi.Clazz.<init>(Clazz.java:65)
> > > at aQute.lib.osgi.Processor.analyzeJar(Processor.java:159)
> > > at
> > > aQute.lib.osgi.Processor.analyzeBundleClasspath(Processor.java:77)
> > > at aQute.lib.osgi.Verifier.verify(Verifier.java:354)
> > > at aQute.lib.osgi.Builder.doVerify(Builder.java:216)
> > > at aQute.lib.osgi.Builder.build(Builder.java:52)
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.buildOSGiBundle(BundlePlugin.java:391)
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:273)
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:227)
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:218)
> > > at
> > > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:499)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:478)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
> > > at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
> > > at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
> > > at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
> > > 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:585)
> > > at
> > > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> > > at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> > > at
> > > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> > > at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> > > [WARNING] Warning building bundle soakit:soakit.core:bundle:1.0-SNAPSHOT :
> > > Instructions for Export-Package that are never used:
> > > org\.jdom\.input\..*|org\.jdom\.input,
> > > org\.jdom\.output\..*|org\.jdom\.output, \.
> > > [WARNING] Warning building bundle soakit:soakit.core:bundle:1.0-SNAPSHOT :
> > > Superfluous export-package instructions: [., org.jdom.input.*,
> > > org.jdom.output.*]
> > > [ERROR] Error building bundle soakit:soakit.core:bundle:1.0-SNAPSHOT :
> > > Invalid class file: com/ibm/icu/impl/data/LocaleElements_zh__PINYIN.class
> > > 60
> > > [ERROR] Error building bundle soakit:soakit.core:bundle:1.0-SNAPSHOT :
> > > Invalid class file: com/ibm/icu/impl/data/LocaleElements_zh__PINYIN.class
> > > 60
> > > [ERROR] Error building bundle soakit:soakit.core:bundle:1.0-SNAPSHOT :
> > > Unresolved references to [.] by class(es) on the
> > > Bundle-Classpath[Jar:dot]:
> > > [JDOMAbout$Info.class, JDOMAbout.class, JDOMAbout$Author.class]
> > > [ERROR] Error(s) found in bundle configuration
> > > [INFO]
> > > ------------------------------------------------------------------------
> > > [ERROR] BUILD ERROR
> > > [INFO]
> > > ------------------------------------------------------------------------
> > > [INFO] Error(s) found in bundle configuration
> > > [INFO]
> > > ------------------------------------------------------------------------
> > > [INFO] Trace
> > > org.apache.maven.lifecycle.LifecycleExecutionException: Error(s) found in
> > > bundle configuration
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:583)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:499)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:478)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142)
> > > at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336)
> > > at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129)
> > > at org.apache.maven.cli.MavenCli.main(MavenCli.java:287)
> > > 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:585)
> > > at
> > > org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
> > > at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
> > > at
> > > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
> > > at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
> > > Caused by: org.apache.maven.plugin.MojoExecutionException: Error(s) found
> > > in bundle configuration
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:344)
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:227)
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:218)
> > > at
> > > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451)
> > > at
> > > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558)
> > > ... 16 more
> > > Caused by: org.apache.maven.plugin.MojoFailureException: Error(s) found in
> > > bundle configuration
> > > at
> > > org.apache.felix.bundleplugin.BundlePlugin.execute(BundlePlugin.java:296)
> > > ... 20 more
> > > [INFO]
> > > ------------------------------------------------------------------------
> > > [INFO] Total time: 7 seconds
> > > [INFO] Finished at: Thu Sep 11 17:15:15 EDT 2008
> > > [INFO] Final Memory: 17M/254M
> > > [INFO]
> > > ------------------------------------------------------------------------
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.