[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [equinox-dev] Equinox Aspects: error can't determine modifiersof missing type

Hi Martin,

Indeed, re-exporting the pde.ui bundle solves the problem, thanks! Could you
please explain the meaning of the re-export statement and in particular when
should I re-export a dependent bundle? Should I simply re-export all
dependent bundles?

Oren 

-----Original Message-----
From: equinox-dev-bounces@xxxxxxxxxxx
[mailto:equinox-dev-bounces@xxxxxxxxxxx] On Behalf Of Martin Lippert
Sent: Sunday, October 26, 2008 2:43 PM
To: Equinox development mailing list
Subject: Re: [equinox-dev] Equinox Aspects: error can't determine
modifiersof missing type

Hi Oren!

The problem seems to occur when the jface bundle is woven and I assume 
that the weaver cannot resolve the type from the pde-ui bundle that you 
are using inside your aspect (the weaver needs to resolve that type if 
its directly used within the pointcut). What happens if you re-export 
the pde.ui bundle?

-Martin


Oren Mishali wrote:
> Hi,
> 
>  
> 
> I'm trying to write a simple aspect that prints a message when the Cancel
> button of a specific wizard (the Plug-in Project Creation Wizard) is
> pressed. Here is the aspect's code:
> 
>  
> 
> import org.eclipse.pde.internal.ui.wizards.plugin.NewPluginProjectWizard;
> //org.eclipse.pde.ui
> 
> import org.eclipse.jface.wizard.Wizard; // org.eclipse.jface
> 
>  
> 
> public aspect PluginWizardCancelPressed {
> 
>  
> 
>             after(): execution(* Wizard.performCancel(..)) &&
> this(NewPluginProjectWizard){
> 
>                         System.out.println(thisJoinPoint);
> 
>             }
> 
> }
> 
>  
> 
>  
> 
>  
> 
> Upon execution I get tons of errors (shown below), and the aspect has no
> effect. Note that everything works fine when rewriting the aspect in the
> following way:
> 
>  
> 
> public aspect PluginWizardCancelPressed {
> 
>  
> 
>             after(Object obj): execution(* Wizard.performCancel(..)) &&
> this(obj){
> 
>                         if(obj instanceof  NewPluginProjectWizard)
> 
>                                     System.out.println(thisJoinPoint);
> 
>             }
> 
> }
> 
>  
> 
> Any suggestions?
> 
>  
> 
> Thanks,
> 
> Oren
> 
>  
> 
> The errors:
> 
> [org.eclipse.jface] error can't determine modifiers of missing type
> org.eclipse.pde.internal.ui.wizards.plugin.NewPluginProjectWizard
> 
> when processing type mungers org.eclipse.jface.preference.IPreferenceStore
> 
> when processing type mungers 
> 
> when weaving 
> 
>  [Xlint:cantFindType]
> 
> [org.eclipse.jface] error can't determine modifiers of missing type
> org.eclipse.pde.internal.ui.wizards.plugin.NewPluginProjectWizard
> 
> when processing type mungers org.eclipse.jface.internal.JFaceActivator
> 
> when processing type mungers 
> 
> when weaving 
> 
>  [Xlint:cantFindType]
> 
> [org.eclipse.jface] error can't determine modifiers of missing type
> org.eclipse.pde.internal.ui.wizards.plugin.NewPluginProjectWizard
> 
> when processing type mungers org.eclipse.jface.dialogs.IDialogSettings
> 
> when processing type mungers 
> 
> when weaving 
> 
>  [Xlint:cantFindType]
> 
> [org.eclipse.jface] error can't determine modifiers of missing type
> org.eclipse.pde.internal.ui.wizards.plugin.NewPluginProjectWizard
> 
> when processing type mungers
org.eclipse.jface.preference.PreferenceManager
> 
> when processing type mungers 
> 
> when weaving
> 
> .
> 
> .
> 
>  
> 
> The manifest of the plug-in project containing the aspect:
> 
> Manifest-Version: 1.0
> 
> Bundle-ManifestVersion: 2
> 
> Bundle-Name: Repository Plug-in
> 
> Bundle-SymbolicName: org.highlevelaj.repository
> 
> Bundle-Version: 1.0.0
> 
> Bundle-Activator: org.highlevelaj.repository.Activator
> 
> Require-Bundle: org.eclipse.ui,
> 
>  org.eclipse.core.runtime,
> 
>  org.aspectj.runtime;visibility:=reexport,
> 
>  org.highlevelaj,
> 
>  org.eclipse.pde.ui
> 
> Eclipse-LazyStart: true
> 
> Export-Package: org.aspectj,
> 
>  org.highlevelaj.repository
> 
> Eclipse-SupplementBundle: org.eclipse.pde.ui, org.eclipse.jface
> 
>  
> 
>  
> 
>  
> 
>  
> 
> 
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> equinox-dev mailing list
> equinox-dev@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev