2008/9/11 Brad Cox, Ph.D. <[EMAIL PROTECTED]>

> tap tap...is this thing on?
>

you posted your first question a mere 8 hours ago - some of us are in a
different timezone
and have a stack of items to work through before we can read+process+reply
to emails, so
please wait before repeatedly posting the same question under different
subjects :)

Brad Cox, Ph.D. wrote:
>
>> Reposted; first one got buried somewhere.
>>
>> I'm using felix's maven plugin to build OSGI apps in eclipse. I understand
>> OSGI overall but the tools chain is driving me nuts.
>>
>> What I don't understand is the interaction between pom.xml, the felix
>> maven plugin, MANIFEST.MF, and the "Organize Manifest Wizard" in eclipse.
>> And should META-INF be in the bundle root or src/main/resources? Putting a
>> copy in src/... does seem to be noticed there but breaks everything,
>> including command line builds. Apparently due to a broken
>> com.ibm.icu.something according to posted bugs.
>>
>> My mental model is the pom is the input and MANIFEST.MF is produced by
>> felix maven plugin based on that pom. This model seems inaccurate somehow.
>> Felix maven plugin's output is voluminous with lots of broken references
>> which eclipse's "organize manifest wizard" seems there to repair. Where do
>> the bogus references come from? In practice, it seems necessary for me to do
>> further repairs to MANIFEST.MF by hand, but these seem to somehow persist
>> after I change the pom (thus the conflict with my mental model).
>>
>> There also seems to be vast differences between running mvn install in the
>> command line and running the same thing in eclipse. Using the command line
>> then importing into eclipse results in bundles that are broken in eclipse
>> and another round of whack a mole to sort things out again. This often
>> results in multiply-defined jar errors with the same jar in "PDE
>> Dependencies" and "Maven Dependencies". Removing PDE dependencies in build
>> settings seems to sort that out; sometimes.
>>
>> The specific problem I'm struggling with is
>> org.osgi.framework.BundleException: The activator
>> com.gestalt.soakit.core.CoreActivator for bundle soakit.core is invalid when
>> that class is definitely defined. I think this means there's a conflict
>> between the BundleActivator class from OSGI vs Equinox, but nothing I've
>> tried seems to repair it (importing org.eclipse.osgi.everything, not
>> org.osgi.whatever).
>>
>> The main problem here is that I'm confused about how the tools chain
>> works; broken mental model. Can someone set me straight?
>>
>> Here's one of the key poms.
>>
>> <?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
>> 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>
>>                        <_failok/>
>>
>> <Bundle-RequiredExecutionEnvironment>J2SE-1.5</Bundle-RequiredExecutionEnvironment>
>>
>>            <Import-Package>
>>                .,
>>                            *;-split-package:=merge-first,
>>
>> org.apache.commons.collections.*;-split-package:=merge-first;version="3.2"
>>
>> org.apache.commons.collections.iterators.*;-split-package:=merge-first;version="3.2",
>>
>>
>> org.jdom;-split-package:=merge-first;version="1.0",
>>
>> org.jdom.*;-split-package:=merge-first;version="1.0",
>>
>> org.jdom.input.*;-split-package:=merge-first;version="1.0",
>>
>> org.jdom.output.*;-split-package:=merge-first;version="1.0",
>>
>> org.apache.xerces.parsers;-split-package:=merge-first,
>>                            <!--
>>                            javax.*;-split-package:=merge-first,
>>                            javax.jws.*;-split-package:=merge-first,
>>                            javax.xml.bind.*;-split-package:=merge-first,
>>                            javax.annotation.*;-split-package:=merge-first,
>>                            javax.xml.soap.*;-split-package:=merge-first,
>>                            javax.xml.stream.*;-split-package:=merge-first,
>>                            javax.activation.*;-split-package:=merge-first,
>>                            -->
>>                        </Import-Package>
>>            <Export-Package>
>>                .,
>>                            *;-split-package:=merge-first,
>>
>>
>> org.apache.commons.collections.*;-split-package:=merge-first;version="3.2",
>>
>> org.apache.commons.collections.iterators.*;-split-package:=merge-first;version="3.2",
>>
>>
>> org.jdom;-split-package:=merge-first;version="1.0",
>>
>> org.jdom.*;-split-package:=merge-first;version="1.0",
>>
>> org.jdom.input.*;-split-package:=merge-first;version="1.0",
>>
>> org.jdom.output.*;-split-package:=merge-first;version="1.0",
>>
>> org.apache.xerces.parsers.*;-split-package:=merge-first,
>>
>> com.gestalt.soakit.core.*;-split-package;=merge-first,
>>                            <!--
>>                            javax.*;-split-package:=merge-first,
>>                            javax.jws.*;-split-package:=merge-first,
>>                            javax.xml.bind;-split-package:=merge-first,
>>                            javax.annotation;-split-package:=merge-first,
>>                            javax.xml.soap;-split-package:=merge-first,
>>                            javax.xml.stream;-split-package:=merge-first,
>>                            javax.activation;-split-package:=merge-first,
>>                            -->
>>                        </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 unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>> ------------------------------------------------------------------------
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>



-- 
Cheers, Stuart

Reply via email to