Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Rich Client Platform (RCP) » exporting feature-based rcp product - help!
exporting feature-based rcp product - help! [message #444255] Sun, 12 February 2006 00:58 Go to next message
Michael Schmidt is currently offline Michael SchmidtFriend
Messages: 45
Registered: July 2009
Member
Folks,
I'm sorry to bother you, but I've spent five days on this problem and
can't get it to work. The books I have relate to Eclipse 3.0, and it
seems this aspect of Eclipse was changed significantly in 3.1.2. The best
info I could find was the on-line rcp tutorial, which I tried to follow -
but no success.

I've created a plug-in that works beautifully. It is branded via the
plugin.xml file. I then created a feature, and then in the plugin project
I created a feature-based product, defining a new product named
pluginproduct. Synch and run the feature-based product gave the following
results.

--->error log
!SESSION 2006-02-11 17:46:43.46
------------------------------------------------
eclipse.buildId=unknown
java.version=1.5.0_05
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Framework arguments: -product PgClient.pluginproduct -pdelaunch
Command-line arguments: -product PgClient.pluginproduct -data
E:\runtime-feature.product -dev
file:E:/JavaPg/.metadata/.plugins/org.eclipse.pde.core/featu re.product/dev.properties
-pdelaunch -os win32 -ws win32 -arch x86

!ENTRY org.eclipse.osgi 2006-02-11 17:46:44.93
!MESSAGE Bundle update@E:/JavaPg/mschmidt.pgclient/ [3] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2006-02-11 17:46:44.93
!MESSAGE Missing required bundle org.eclipse.ui.intro_0.0.0.
!SUBENTRY 1 org.eclipse.osgi 2006-02-11 17:46:44.93
!MESSAGE Missing required bundle org.eclipse.help.base_0.0.0.

!ENTRY org.eclipse.core.runtime 2006-02-11 17:46:44.109
!MESSAGE Product PgClient.pluginproduct could not be found.

!ENTRY org.eclipse.osgi 2006-02-11 17:46:44.125
!MESSAGE Application error
!STACK 1
java.lang.RuntimeException: No application id has been found.
at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(Pl atformActivator.java:204)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:376)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:163)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334 )
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)

!ENTRY org.eclipse.osgi 2006-02-11 17:46:44.125
!MESSAGE Bundle update@E:/JavaPg/mschmidt.pgclient/ [3] was not resolved.
!SUBENTRY 1 org.eclipse.osgi 2006-02-11 17:46:44.125
!MESSAGE Missing required bundle org.eclipse.ui.intro_0.0.0.
!SUBENTRY 1 org.eclipse.osgi 2006-02-11 17:46:44.140
!MESSAGE Missing required bundle org.eclipse.help.base_0.0.0.

--->Here is the plugin manifest.mf
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: PgClient Plug-in
Bundle-SymbolicName: PgClient; singleton:=true
Bundle-Version: 1.0.0
Bundle-Activator: pgClient.PgClientPlugin
Bundle-Localization: plugin
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.ui.intro,
org.eclipse.help,
org.eclipse.help.base
Eclipse-AutoStart: true
Bundle-Vendor: Michael Schmidt

--->Here is the plugin.xml file
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.1"?>

<!-- Basic plugin definition. The %field tags reference entries in the
plugin.properties file -->
<plugin>

<!-- Plugin application extension properties -->
<extension
id="application"
point="org.eclipse.core.runtime.applications">
<application>
<run
class="pgClient.App.Application">
</run>
</application>
</extension>

<!-- Perspective extension properties -->
<extension point="org.eclipse.ui.perspectives">
<perspective
name="pgClient.perspective"
class="pgClient.App.Perspective"
id="PgClient.perspective">
</perspective>
</extension>

<!-- Product branding properties -->
<extension
id="product"
point="org.eclipse.core.runtime.products">
<product
application="PgClient.application"
description="PostgreSQL Client"
name="%productName">
<!-- Set icons for application title bar -->
<property
name="windowImages"
value="icons/pgIcon.gif, icons/pgIcon32.gif"/>
<!-- Set About screen text -->
<property
name="aboutText"
value="%aboutText"/>
<!-- Set About screen image -->
<property
name="aboutImage"
value="product_lg.gif"/>
<!-- Set application name for application title bar -->
<property
name="appName"
value="%appName"/>
<!-- Set file that contains customization properties -->
<property
name="preferenceCustomization"
value="plugin_customization.ini"/>
</product>
</extension>

<!-- Welcome feature extension properties -->
<extension point="org.eclipse.ui.intro">
<intro
class="org.eclipse.ui.intro.config.CustomizableIntroPart"
icon="icons/intro.gif"
id="pgClient.introID">
</intro>
<introProductBinding
introId="pgClient.introID"
productId="PgClient.product">
</introProductBinding>
</extension>

<!-- Welcome feature configuration properties -->
<extension point="org.eclipse.ui.intro.config">
<config
introId="pgClient.introID"
content="intro.xml"
id="PgClient.configId">
<presentation
home-page-id="root">
<implementation
kind="html"
os="win32,linux,macosx">
</implementation>
</presentation>
</config>
</extension>

<!-- Help system feature configuration properties -->
<extension point="org.eclipse.help.toc">
<toc primary="true" file="toc_book.xml"/>
<toc primary="false" file="toc_adapting.xml"/>
<toc primary="false" file="toc_faqs.xml"/>
<toc primary="false" file="toc_features.xml"/>
<toc primary="false" file="toc_skills.xml"/>
</extension>

<!-- Preferences page to set database connection options -->
<extension point="org.eclipse.ui.preferencePages">
<page
class="pgClient.Preferences.GeneralPreferences"
name="General"
id="pgClient.Preferences.GeneralPreferences"/>
<page
class="pgClient.Preferences.DbSettings"
name="Database Settings"
id="pgClient.Preferences.DbSettings"/>
</extension>

<!-- PreferenceInitializer initiates default values -->
<extension point="org.eclipse.core.runtime.preferences">
<initializer class="pgClient.Preferences.PreferenceInitializer"/>
</extension>
<extension
id="pluginproduct"
point="org.eclipse.core.runtime.products">
<product
application="PgClient.application"
name="%productName">
<property
name="windowImages"
value="icons/pgIcon.gif, icons/pgIcon32.gif"/>
<property
name="aboutText"
value="%aboutText"/>
<property
name="aboutImage"
value="product_lg.gif"/>
</product>
</extension>

</plugin>

--->Here is the plugin build.prop[erties
source.. = src/
output.. = bin/
bin.includes = toc_book.xml,\
helpdoc/,\
icons/,\
intro.xml,\
introdoc/,\
pg_custom.ini,\
plugin.properties,\
plugin.xml,\
product_lg.gif,\
splash.bmp,\
toc_adapting.xml,\
toc_faqs.xml,\
toc_features.xml,\
toc_skills.xml

--->Here is the feature.xml file
<?xml version="1.0" encoding="UTF-8"?>
<feature
id="mschmidt.pgclient_feature"
label="mschmidt.pgclient-feature"
version="1.0.0"
provider-name="Michael Schmidt">

<description url="doc/description.html">
[Enter Feature Description here.]
</description>

<copyright url="doc/copyright.html">
[Enter Copyright Description here.]
</copyright>

<license url="doc/license.html">
[Enter License Description here.]
</license>

<requires>
<import plugin="org.eclipse.ui"/>
<import plugin="org.eclipse.core.runtime"/>
<import plugin="org.eclipse.ui.intro"/>
<import plugin="org.eclipse.help"/>
<import plugin="org.eclipse.help.base"/>
</requires>

<plugin
id="PgClient"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>

</feature>

--->And finally, here is the feature build.properties
bin.includes = feature.xml,\
doc/


Any thoughts would be of great help, as I have run out of them!
Michael Schmidt
Re: exporting feature-based rcp product - help! [message #444279 is a reply to message #444255] Mon, 13 February 2006 13:20 Go to previous messageGo to next message
Paul Webster is currently offline Paul WebsterFriend
Messages: 6859
Registered: July 2009
Location: Ottawa
Senior Member

Michael Schmidt wrote:
>
> --->Here is the plugin.xml file
> <?xml version="1.0" encoding="UTF-8"?>
> <?eclipse version="3.1"?>
>
> <!-- Basic plugin definition. The %field tags reference entries in the
> plugin.properties file -->
> <plugin>
>
> <!-- Plugin application extension properties -->
> <extension
> id="application"
> point="org.eclipse.core.runtime.applications">

Application id ^^^^



>
> <!-- PreferenceInitializer initiates default values -->
> <extension point="org.eclipse.core.runtime.preferences">
> <initializer class="pgClient.Preferences.PreferenceInitializer"/>
> </extension>
> <extension
> id="pluginproduct"
> point="org.eclipse.core.runtime.products">
> <product
> application="PgClient.application"

Application id ^^^^

It could be that you can use application="application" within this
plugin, and it doesn't like the PgClient.application?

I've always used the product.configuration to create the product, not an
extension, so I've never seen it used this way.

Later,
PW


Re: exporting feature-based rcp product - help! [message #444300 is a reply to message #444279] Mon, 13 February 2006 17:03 Go to previous messageGo to next message
Michael Schmidt is currently offline Michael SchmidtFriend
Messages: 45
Registered: July 2009
Member
Thanks for taking the time to look at this, Mr. Webster. Being new to
Eclipse, I've relied on the documentation that is available in setting up
my project. You mentioned product.configuration (I assume this is an xml
file?). Could you point me to some information on this?

I think what I might need to do is rebuild the project, adding one
component at a time, to find where the glitch is.

Again, thanks for your help!

Michael Schmidt
Re: exporting feature-based rcp product - help! [message #444323 is a reply to message #444279] Mon, 13 February 2006 18:05 Go to previous messageGo to next message
Michael Schmidt is currently offline Michael SchmidtFriend
Messages: 45
Registered: July 2009
Member
In trying to find the problem here, I did an experiment. I created a
plugin project using the "Hello RCP" template, checked that it launched
ok, then created a feature for it, went back to the plugin, and created a
feature-based product using the launch configuration (entering a new dummy
product name per instructions). Synched it and the product launches as it
should.

I then did exactly the same thing using the "RCP application with an
intro" template. It did not launch. The error log was

!SESSION 2006-02-13 11:03:16.281
-----------------------------------------------
eclipse.buildId=unknown
java.version=1.5.0_06
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=en_US
Framework arguments: -product mschmidt.introsample.plugin_product
-pdelaunch
Command-line arguments: -product mschmidt.introsample.plugin_product
-data E:\runtime-intro.product -dev
file:E:/javawork/.metadata/.plugins/org.eclipse.pde.core/int ro.product/dev.properties
-pdelaunch -os win32 -ws win32 -arch x86

!ENTRY org.eclipse.osgi 2006-02-13 11:03:17.125
!MESSAGE Bundle update@E:/javawork/mschmidt.introsample/ [3] was not
resolved.
!SUBENTRY 1 org.eclipse.osgi 2006-02-13 11:03:17.125
!MESSAGE Missing required bundle org.eclipse.ui.intro_0.0.0.

!ENTRY org.eclipse.core.runtime 2006-02-13 11:03:17.140
!MESSAGE Product mschmidt.introsample.plugin_product could not be found.

!ENTRY org.eclipse.osgi 2006-02-13 11:03:17.140
!MESSAGE Application error
!STACK 1
java.lang.RuntimeException: No application id has been found.
at
org.eclipse.core.internal.runtime.PlatformActivator$1.run(Pl atformActivator.java:204)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:376)
at
org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseS tarter.java:163)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334 )
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)

!ENTRY org.eclipse.osgi 2006-02-13 11:03:17.156
!MESSAGE Bundle update@E:/javawork/mschmidt.introsample/ [3] was not
resolved.
!SUBENTRY 1 org.eclipse.osgi 2006-02-13 11:03:17.156
!MESSAGE Missing required bundle org.eclipse.ui.intro_0.0.0.

I was as careful as possible in doing exactly the same thing for both.
Possibly a bug?

Michael Schmidt
Re: exporting feature-based rcp product - help! [message #444325 is a reply to message #444300] Mon, 13 February 2006 18:59 Go to previous messageGo to next message
Paul Webster is currently offline Paul WebsterFriend
Messages: 6859
Registered: July 2009
Location: Ottawa
Senior Member

Your approach is probably best ... your original plugin application and
product seem OK, the product reference to the application id should be
fully qualified.

But ... I was just glancing at your build.properties ... the
bin.includes should have META-INF/ somewhere.

Later,
PW


Re: exporting feature-based rcp product - help! [message #444380 is a reply to message #444255] Tue, 14 February 2006 18:57 Go to previous messageGo to next message
Ian Leslie is currently offline Ian LeslieFriend
Messages: 137
Registered: July 2009
Senior Member
Michael Schmidt wrote:

<snip>
> I've created a plug-in that works beautifully. It is branded via the
> plugin.xml file. I then created a feature, and then in the plugin project
> I created a feature-based product, defining a new product named
> pluginproduct. Synch and run the feature-based product gave the following
> results.

> --->error log
> !SESSION 2006-02-11 17:46:43.46
> ------------------------------------------------
> <snip>
> !ENTRY org.eclipse.osgi 2006-02-11 17:46:44.125
> !MESSAGE Bundle update@E:/JavaPg/mschmidt.pgclient/ [3] was not resolved.
> !SUBENTRY 1 org.eclipse.osgi 2006-02-11 17:46:44.125
> !MESSAGE Missing required bundle org.eclipse.ui.intro_0.0.0.
> !SUBENTRY 1 org.eclipse.osgi 2006-02-11 17:46:44.140
> !MESSAGE Missing required bundle org.eclipse.help.base_0.0.0.

> --->Here is the plugin manifest.mf
> Manifest-Version: 1.0
> Bundle-ManifestVersion: 2
> Bundle-Name: PgClient Plug-in
> Bundle-SymbolicName: PgClient; singleton:=true
> Bundle-Version: 1.0.0
> Bundle-Activator: pgClient.PgClientPlugin
> Bundle-Localization: plugin
> Require-Bundle: org.eclipse.ui,
> org.eclipse.core.runtime,
> org.eclipse.ui.intro,
> org.eclipse.help,
> org.eclipse.help.base
> Eclipse-AutoStart: true
> Bundle-Vendor: Michael Schmidt
<snip>

The above error is trying to tell you that your plug-in "mschmit.pgclient"
could not be resolved because it requires the plug-ins
"org.eclipse.ui.intro" and "org.eclipse.help.base" that the system could
not find. For help to work you need to add a few more dependencies. Here
is the list from one of my help plug-ins:
org.eclipse.help,
org.apache.ant,
org.apache.lucene,
org.eclipse.help.appserver,
org.eclipse.help.base,
org.eclipse.help.ui,
org.eclipse.help.webapp,
org.eclipse.tomcat,
org.eclipse.ui,
org.eclipse.ui.intro

In my case I have a .product (I am not sure if that is what you are using)
file that defines my product by features (one feature for a common library
that I share between apps, one for a thrid party library I am using, one
for the application, one for the database used by the application and one
for the rcp plug-ins I use). I created a org.eclipse.rcp.more_feature
that includes the org.eclipse.rcp feature and the additional plug-ins I
need that are not part of the rcp SDK distribution.

Here is my suggestion. Get your self back to where you have a working
application and a feature that includes it. Create a new feature called
org.eclipse.rcp.more_feature and include the above plug-ins in it and on
the included features tab add org.eclipse.rcp. Now you should have a
feature that includes your plug-in and a feature that includes all the
eclipse plug-ins you need. Now create a new .product file (in case you
have not done this before File | New | Other... choose "Plug-in
Development/Product Configuration"). On the overview page you should be
able to create a new product using the "New..." button and select your
application plug-in, create a product ID and select the application from
the drop down. On the configuration tab add the two features needed -
your application's feature and the org.eclipse.rcp.more_feature you
created above. Then it should launch after performing a synchronize on
the overview tab.

I hope that helps,

Ian
Re: exporting feature-based rcp product - help! [message #444388 is a reply to message #444380] Wed, 15 February 2006 00:36 Go to previous message
Michael Schmidt is currently offline Michael SchmidtFriend
Messages: 45
Registered: July 2009
Member
That moves things in the right direction! Using your advice, my .product
now runs after synch within Eclipse but won't run when exported. I do
like the idea of having a separate feature for the Eclipse plugins. I'll
keep plugging away. Thanks so much for the ideas.

Michael Schmidt
Previous Topic:build.xml is deleted after exporting plugin
Next Topic:Perspective with actions in its toolbar cause other perspectives to have a huge gap
Goto Forum:
  


Current Time: Thu Dec 05 10:39:26 GMT 2024

Powered by FUDForum. Page generated in 0.46415 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top