Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Eclipse Platform » Problems accessing schema *.exsd when plugin is deployed as single jar archive
Problems accessing schema *.exsd when plugin is deployed as single jar archive [message #290338] Wed, 24 August 2005 07:02 Go to next message
Eclipse UserFriend
Originally posted by: joerg_baeuerle.arburg.com

Hi all,

I have a strange problem making my self defined extension point known to
other plugins in Eclipse 3.1. I have written a plugin
"lvs.migration.plugin" which defines an extension point with the id
"MaskSyntaxTreeVisitors" (see below). Clients shall be able do register a
visitor which implements the interface IMaskSyntaxTreeVisitor provided by
my plugin.
The interface IMaskSyntaxTreeVisitor is contained in the package
lvs.migration.plugin.core.extraction.astvisitor which I export.

In the PDE runtime workbench everything works fine. I can create a new
plugin "Foo", set the dependencies to my "lvs.migration.plugin"-plugin,
use the extension wizard, select
"lvs.migration.plugin.MaskSyntaxTreeVisitors", create a new visitor class
implementing IMaskSyntaxTreeVisitor, run the PDE runtime workbench and
everything is OK.

But when I deploy the "lvs.migration.plugin" I have a strange problem:

If I deploy the plugin as single jar archive, I can access all the classes
and interfaces from the packages I have exported via the manifest file,
but my extension point is not visible.
I can choose the extension point
"lvs.migration.plugin.MaskSyntaxTreeVisitors" in the enxtension point
wizard, but via the context menu and "New" only "Generic" can be selected.
It seems as if the schema file MaskSyntaxTreeVisitors.exsd is not
accessible.

If I deploy the plugin in a folder (like in eclipse 3.0), everthing works
fine similar to the run in the PDE runtime workbench.

Does anyone know if I there's a problem with accessing the schema file
packaged in a jar archive? Or did I simple do something wrong?

TIA,
Joerg

###########################
plugin.xml:
###########################
<plugin>
<extension-point id="MaskSyntaxTreeVisitors"
name="MaskSyntaxTreeVisitors" schema="schema/MaskSyntaxTreeVisitors.exsd"/>
<extension
point="org.eclipse.ui.newWizards">
<category
id="lvs.migration.plugin.lvswizardcategory"
name="LVS Migration"/>
<primaryWizard
id="lvs.migration.plugin.ui.wizard.LVSMigrationWizard"/>
<wizard
canFinishEarly="false"
category="lvs.migration.plugin.lvswizardcategory"
class="lvs.migration.plugin.ui.wizard.LVSMigrationWizard"
descriptionImage="icons/wizard_test.jpg"
hasPages="true"
icon="icons/lvs_wizard_icon.gif"
id="lvs.migration.plugin.ui.wizard.LVSMigrationWizard"
name="LVS Migrationsassistent"
project="true"/>
</extension>
</plugin>

###########################
manifest.mf:
###########################
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: LVS Migration Tool
Bundle-SymbolicName: lvs.migration.plugin; singleton:=true
Bundle-Version: 1.0.0
Bundle-Activator: lvs.migration.plugin.LVSMigrationPlugin
Bundle-Localization: plugin
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.core.resources,
org.eclipse.ui,
org.eclipse.ui.ide,
org.eclipse.ui.console,
org.eclipse.jdt.core,
org.eclipse.jdt.ui,
org.eclipse.cdt,
org.eclipse.cdt.core,
lvs.migration.plugin.lib
Eclipse-AutoStart: true
Bundle-Vendor: Joerg Baeuerle, ARBURG Anwendungsentwicklung
Export-Package: lvs.migration.plugin.core,
lvs.migration.plugin.core.extraction,
lvs.migration.plugin.core.extraction.astvisitor


###########################
MaskSyntaxTreeVisitors.exsd:
(some annotations left out)
###########################
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="lvs.migration.plugin">
<annotation>
<appInfo>
<meta.schema plugin="lvs.migration.plugin"
id="MaskSyntaxTreeVisitors" name="MaskSyntaxTreeVisitors"/>
</appInfo>
<documentation>
Ein MaskSyntaxTreeVisitor wird vom Migrationsplugin beim
Durchlaufen jedes abstrakten Syntaxbaumes der einzelnen LVS-Masken
eingebunden.
</documentation>
</annotation>

<element name="extension">
<complexType>
<sequence>
<element ref="visitor"/>
</sequence>
<attribute name="point" type="string" use="required">
<annotation>
<documentation>

</documentation>
</annotation>
</attribute>
<attribute name="id" type="string">
<annotation>
<documentation>

</documentation>
</annotation>
</attribute>
<attribute name="name" type="string">
<annotation>
<documentation>

</documentation>
<appInfo>
<meta.attribute translatable="true"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>

<element name="visitor">
<complexType>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
Ein eindeutiger Bezeichnung fuer den Visitor, wie z.B.
dessen vollstaendiger Klassenname.
</documentation>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
Vollstaendiger Klassenname des Visitors.
</documentation>
<appInfo>
<meta.attribute kind="java"
basedOn=" lvs.migration.plugin.core.extraction.astvisitor.IMaskSyntaxT reeVisitor "/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>

</schema>
Re: Problems accessing schema *.exsd when plugin is deployed as single jar archi [message #290816 is a reply to message #290338] Thu, 01 September 2005 17:04 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: a.schuring.topdesk.nl

Joerg wrote:

> I have a strange problem making my self defined extension point known to
> other plugins in Eclipse 3.1. I have written a plugin
> "lvs.migration.plugin" which defines an extension point with the id
> "MaskSyntaxTreeVisitors" (see below). Clients shall be able do register a
> visitor which implements the interface IMaskSyntaxTreeVisitor provided by
> my plugin.
> The interface IMaskSyntaxTreeVisitor is contained in the package
> lvs.migration.plugin.core.extraction.astvisitor which I export.

> In the PDE runtime workbench everything works fine. I can create a new
> plugin "Foo", set the dependencies to my "lvs.migration.plugin"-plugin,
> use the extension wizard, select
> "lvs.migration.plugin.MaskSyntaxTreeVisitors", create a new visitor class
> implementing IMaskSyntaxTreeVisitor, run the PDE runtime workbench and
> everything is OK.

> But when I deploy the "lvs.migration.plugin" I have a strange problem:

> If I deploy the plugin as single jar archive, I can access all the classes
> and interfaces from the packages I have exported via the manifest file,
> but my extension point is not visible.
> I can choose the extension point
> "lvs.migration.plugin.MaskSyntaxTreeVisitors" in the enxtension point
> wizard, but via the context menu and "New" only "Generic" can be selected.
> It seems as if the schema file MaskSyntaxTreeVisitors.exsd is not
> accessible.

> If I deploy the plugin in a folder (like in eclipse 3.0), everthing works
> fine similar to the run in the PDE runtime workbench.

No responses to this message? As in, nobody knows or nobody cares?

I'm having the same issue with Eclipse 3.1: exporting my plugin as single
jar means that the .exsd files are not found and hence people can not
define new extensions to my plugin. When I export the exact same project
as directory tree, it automagically works!

Anyone care to enlighten the both of us?


Arno
Re: Problems accessing schema *.exsd when plugin is deployed as single jar archi [message #290817 is a reply to message #290816] Thu, 01 September 2005 17:12 Go to previous messageGo to next message
Eclipse UserFriend
Originally posted by: merks.ca.ibm.com

This is a multi-part message in MIME format.
--------------090905070600050700010407
Content-Type: text/plain; charset=ISO-8859-15; format=flowed
Content-Transfer-Encoding: 7bit

Guys,

I know next to nothing about this, but are you sure you've deployed the
..exsd in the jar? In org.eclipse.emf.ecore we have this
build.properties file and I've not seen a problem like the one you describe:

bin.includes = about.html,\
plugin.*,\
ecore.jar,\
model/,\
META-INF/
src.includes = about.html,\
* schema/*
source.ecore.jar = src/
output.ecore.jar = bin/
exclude.ecore.jar = **/doc-files/**

In our case, the .exsd files are in that schema folder.


Arno Schuring wrote:

> Joerg wrote:
>
>> I have a strange problem making my self defined extension point known
>> to other plugins in Eclipse 3.1. I have written a plugin
>> "lvs.migration.plugin" which defines an extension point with the id
>> "MaskSyntaxTreeVisitors" (see below). Clients shall be able do
>> register a visitor which implements the interface
>> IMaskSyntaxTreeVisitor provided by my plugin.
>> The interface IMaskSyntaxTreeVisitor is contained in the package
>> lvs.migration.plugin.core.extraction.astvisitor which I export.
>
>
>> In the PDE runtime workbench everything works fine. I can create a
>> new plugin "Foo", set the dependencies to my
>> "lvs.migration.plugin"-plugin, use the extension wizard, select
>> "lvs.migration.plugin.MaskSyntaxTreeVisitors", create a new visitor
>> class implementing IMaskSyntaxTreeVisitor, run the PDE runtime
>> workbench and everything is OK.
>
>
>> But when I deploy the "lvs.migration.plugin" I have a strange problem:
>
>
>> If I deploy the plugin as single jar archive, I can access all the
>> classes and interfaces from the packages I have exported via the
>> manifest file, but my extension point is not visible.
>> I can choose the extension point
>> "lvs.migration.plugin.MaskSyntaxTreeVisitors" in the enxtension point
>> wizard, but via the context menu and "New" only "Generic" can be
>> selected.
>> It seems as if the schema file MaskSyntaxTreeVisitors.exsd is not
>> accessible.
>
>
>> If I deploy the plugin in a folder (like in eclipse 3.0), everthing
>> works fine similar to the run in the PDE runtime workbench.
>
>
> No responses to this message? As in, nobody knows or nobody cares?
>
> I'm having the same issue with Eclipse 3.1: exporting my plugin as
> single jar means that the .exsd files are not found and hence people
> can not define new extensions to my plugin. When I export the exact
> same project as directory tree, it automagically works!
>
> Anyone care to enlighten the both of us?
>
>
> Arno
>


--------------090905070600050700010407
Content-Type: text/html; charset=ISO-8859-15
Content-Transfer-Encoding: 8bit

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-15"
http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Guys,<br>
<br>
I know next to nothing about this, but are you sure you've deployed the
..exsd in the jar?
Re: Problems accessing schema *.exsd when plugin is deployed as single jar archi [message #290829 is a reply to message #290817] Thu, 01 September 2005 19:52 Go to previous messageGo to next message
Arno Schuring is currently offline Arno SchuringFriend
Messages: 5
Registered: July 2009
Junior Member
"Ed Merks" <merks@ca.ibm.com> schreef in bericht
news:df7cq6$ton$1@news.eclipse.org...
> I know next to nothing about this, but are you sure you've deployed the
> .exsd in the jar? In org.eclipse.emf.ecore we have this
> build.properties file and I've not seen a problem like the one you
> describe:

Thanks for the response. I believe I did... tried both the binary and source
builds, and had the boxes at schema/ checked. I even verified that the files
existed in the .jar, but will verify the whole thing again tomorrow.

I did find a way around it, though I very much hope to find a better way. I
defined a second plug-in and included the source build in that directory,
via extension point org.eclipse.pde.core.source - actually this is the only
extension point it declares. I've seen more plugins use this approach, and
copied it. That source folder then contains the source build (with the class
files removed, they are not used).

To sum up:

plugins/plugin_ver.jar
(if the .jar contains schema/*.exsd, PDE doesn't seem to find them)
plugins/plugin.source_ver/plugin.xml
(declares "src" as PDE source folder)
plugins/plugin.source_ver/src/plugin_ver/schema/*.exsd
(when put here, the whole thing works as expected)

But I still consider this a workaround. Does anyone else have any input on
this?


Regards,
Arno
Re: Problems accessing schema *.exsd when plugin is deployed as single jar archi [message #291019 is a reply to message #290829] Tue, 06 September 2005 13:01 Go to previous message
Eclipse UserFriend
Originally posted by: merks.ca.ibm.com

This is a multi-part message in MIME format.
--------------050007060901030104010005
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

Arno,

As I said, I really know very little about this. From what you say, it
sounds like it will work only if it's packaged up in the source plugin.
That seems surprising. I could imagine that you might want it to work
without having to ship a source plugin. After all, not all things are
open source. Perhaps if no one answers the question here you can open a
bugzilla feature request to support finding the.exsd file without
requiring it to be in a source plugin. That should generate a response,
either to explain that it's already possible or to explain that it's a
good idea...


Arno Schuring wrote:

>"Ed Merks" <merks@ca.ibm.com> schreef in bericht
>news:df7cq6$ton$1@news.eclipse.org...
>
>
>>I know next to nothing about this, but are you sure you've deployed the
>>.exsd in the jar? In org.eclipse.emf.ecore we have this
>>build.properties file and I've not seen a problem like the one you
>>describe:
>>
>>
>
>Thanks for the response. I believe I did... tried both the binary and source
>builds, and had the boxes at schema/ checked. I even verified that the files
>existed in the .jar, but will verify the whole thing again tomorrow.
>
>I did find a way around it, though I very much hope to find a better way. I
>defined a second plug-in and included the source build in that directory,
>via extension point org.eclipse.pde.core.source - actually this is the only
>extension point it declares. I've seen more plugins use this approach, and
>copied it. That source folder then contains the source build (with the class
>files removed, they are not used).
>
>To sum up:
>
>plugins/plugin_ver.jar
>(if the .jar contains schema/*.exsd, PDE doesn't seem to find them)
>plugins/plugin.source_ver/plugin.xml
>(declares "src" as PDE source folder)
>plugins/plugin.source_ver/src/plugin_ver/schema/*.exsd
>(when put here, the whole thing works as expected)
>
>But I still consider this a workaround. Does anyone else have any input on
>this?
>
>
>Regards,
>Arno
>
>
>
>


--------------050007060901030104010005
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Arno,<br>
<br>
As I said, I really know very little about this.&nbsp; From what you say, it
sounds like it will work only if it's packaged up in the source
plugin.&nbsp; That seems surprising.&nbsp; I could imagine that you might want it
to work without having to ship a source plugin.&nbsp; After all, not all
things are open source.&nbsp; Perhaps if no one answers the question here
you can open a bugzilla feature request to support finding the.exsd
file without requiring it to be in a source plugin.&nbsp; That should
generate a response, either to explain that it's already possible or to
explain that it's a good idea...<br>
<br>
<br>
Arno Schuring wrote:
<blockquote cite="middf7m63$atg$1@news.eclipse.org" type="cite">
<pre wrap="">"Ed Merks" <a class="moz-txt-link-rfc2396E" href="mailto:merks@ca.ibm.com">&lt;merks@ca.ibm.com&gt;</a> schreef in bericht
<a class="moz-txt-link-freetext" href="news:df7cq6$ton$1@news.eclipse.org">news:df7cq6$ton$1@news.eclipse.org</a>...
</pre>
<blockquote type="cite">
<pre wrap="">I know next to nothing about this, but are you sure you've deployed the
..exsd in the jar? In org.eclipse.emf.ecore we have this
build.properties file and I've not seen a problem like the one you
describe:
</pre>
</blockquote>
<pre wrap=""><!---->
Thanks for the response. I believe I did... tried both the binary and source
builds, and had the boxes at schema/ checked. I even verified that the files
existed in the .jar, but will verify the whole thing again tomorrow.

I did find a way around it, though I very much hope to find a better way. I
defined a second plug-in and included the source build in that directory,
via extension point org.eclipse.pde.core.source - actually this is the only
extension point it declares. I've seen more plugins use this approach, and
copied it. That source folder then contains the source build (with the class
files removed, they are not used).

To sum up:

plugins/plugin_ver.jar
(if the .jar contains schema/*.exsd, PDE doesn't seem to find them)
plugins/plugin.source_ver/plugin.xml
(declares "src" as PDE source folder)
plugins/plugin.source_ver/src/plugin_ver/schema/*.exsd
(when put here, the whole thing works as expected)

But I still consider this a workaround. Does anyone else have any input on
this?


Regards,
Arno


</pre>
</blockquote>
<br>
</body>
</html>

--------------050007060901030104010005--
Previous Topic:C/C++ std path
Next Topic:Encoding
Goto Forum:
  


Current Time: Thu Apr 25 18:58:49 GMT 2024

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

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

Back to the top