Home » Eclipse Projects » Rich Client Platform (RCP) » exporting feature-based rcp product - help!
exporting feature-based rcp product - help! [message #444255] |
Sat, 11 February 2006 19:58  |
Eclipse User |
|
|
|
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 #444380 is a reply to message #444255] |
Tue, 14 February 2006 13:57   |
Eclipse User |
|
|
|
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] |
Tue, 14 February 2006 19:36  |
Eclipse User |
|
|
|
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
|
|
|
Goto Forum:
Current Time: Wed May 14 15:05:40 EDT 2025
Powered by FUDForum. Page generated in 0.05200 seconds
|