Re: [forge-dev] Add module dependency
gastaldi Feb 10, 2014 11:48 AMRafael,
Try adding your JDT dependencies as provided. I'm afraid Forge 1 won't
handle conflicting classes very well. This is fixed in Forge 2.
On 10-02-2014 14:43, Rafael Pestano wrote:
Hi Ivan
"Are you sure that changing the scope to compile won't fix the issue?"
>
When i use compile scope i got classcast exception,(full stacktrace
also added below) but as soon i use org.eclipse.jdt.core as provided
and add java-parser module dependency to my plugin module.xml
everything works. I think its a classloading issue.
Here is the code:
private boolean verifyStaleReference(JavaSource source) {
CompilationUnit comp = (CompilationUnit) source.getInternal();
comp.getRoot().toString();
//todo verify services stale references
source.getOrigin().toString();
return true;
}
>
full source code is
I've also tried jdt from this dependency:
<dependency>
<groupId>org.eclipse.jdt</groupId>
<artifactId>org.eclipse.jdt.core</artifactId>
<version>3.7.1</version>
<scope>compile</scope>
</dependency>
i got same classcastexception.
stacktrace:
**ERROR** Exception encountered: (type "set VERBOSE false" to
disable stack traces)
java.lang.ClassCastException: org.eclipse.jdt.core.dom.CompilationUnit
cannot be cast to org.eclipse.jdt.core.dom.CompilationUnit
at
br.ufrgs.rmpestano.intrabundle.model.OSGiModuleImpl.verifyStaleReference(OSGiModuleImpl.java:368)
at
br.ufrgs.rmpestano.intrabundle.model.OSGiModuleImpl.searchStaleReferences(OSGiModuleImpl.java:359)
at
br.ufrgs.rmpestano.intrabundle.model.OSGiModuleImpl.searchStaleReferences(OSGiModuleImpl.java:354)
at
br.ufrgs.rmpestano.intrabundle.model.OSGiModuleImpl.searchStaleReferences(OSGiModuleImpl.java:354)
at
br.ufrgs.rmpestano.intrabundle.model.OSGiModuleImpl.findStaleReferences(OSGiModuleImpl.java:346)
at
br.ufrgs.rmpestano.intrabundle.model.OSGiModuleImpl.getStaleReferences(OSGiModuleImpl.java:461)
at
br.ufrgs.rmpestano.intrabundle.plugin.BundlePlugin.staleReferences(BundlePlugin.java:107)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.jboss.forge.shell.command.Execution.perform(Execution.java:160)
at
org.jboss.forge.shell.command.fshparser.FSHRuntime.run(FSHRuntime.java:109)
at
org.jboss.forge.shell.command.fshparser.FSHRuntime.run(FSHRuntime.java:47)
at
org.jboss.forge.shell.ShellImpl$ExecutorThread.run(ShellImpl.java:796)
at org.jboss.forge.shell.ShellImpl.execute(ShellImpl.java:819)
at org.jboss.forge.shell.ShellImpl.doShell(ShellImpl.java:609)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.jboss.weld.bean.proxy.AbstractBeanInstance.invoke(AbstractBeanInstance.java:48)
at
org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:125)
at
org.jboss.forge.shell.ShellImpl$Proxy$_$$_WeldClientProxy.doShell(ShellImpl$Proxy$_$$_WeldClientProxy.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
org.jboss.weld.util.reflection.SecureReflections$13.work(SecureReflections.java:305)
at
org.jboss.weld.util.reflection.SecureReflectionAccess.run(SecureReflectionAccess.java:54)
at
org.jboss.weld.util.reflection.SecureReflectionAccess.runAsInvocation(SecureReflectionAccess.java:163)
at
org.jboss.weld.util.reflection.SecureReflections.invoke(SecureReflections.java:299)
at
org.jboss.weld.introspector.jlr.WeldMethodImpl.invokeOnInstance(WeldMethodImpl.java:188)
at
org.jboss.weld.introspector.ForwardingWeldMethod.invokeOnInstance(ForwardingWeldMethod.java:59)
at
org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstanceWithSpecialValue(MethodInjectionPoint.java:198)
at
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:282)
at
org.jboss.weld.event.ObserverMethodImpl.sendEvent(ObserverMethodImpl.java:265)
at
org.jboss.weld.event.ObserverMethodImpl.notify(ObserverMethodImpl.java:234)
at
org.jboss.weld.manager.BeanManagerImpl.notifyObservers(BeanManagerImpl.java:635)
at
org.jboss.weld.manager.BeanManagerImpl.fireEvent(BeanManagerImpl.java:622)
at
org.jboss.weld.manager.BeanManagerImpl.fireEvent(BeanManagerImpl.java:616)
at org.jboss.forge.shell.Bootstrap$1.run(Bootstrap.java:186)
at java.lang.Thread.run(Thread.java:744)
>
>
2014-02-10 14:16 GMT-02:00 Rafael Pestano <rmpestano@gmail.com
<mailto:rmpestano@gmail.com>>:
Hi guys,
i need to access class AST, is that possible with forge-shell-api?
>
2014-02-10 11:41 GMT-02:00 George Gastaldi <ggastald@redhat.com
<mailto:ggastald@redhat.com>>:
Hi Rafael,
Why do you need to access
org.eclipse.jdt.core.dom.CompilationUnit? You should only use
the classes in java-parser-api that is already provided when
you add a dependency to forge-shell-api. That said,
forge-shell-api with the provided scope is the only dependency
your module might need.
See https://github.com/forge/core/blob/1.x/dev-plugins/pom.xml
as an example.
Best Regards,
George
>
On 10-02-2014 11:14, Rafael Pestano wrote:
>> here is complete pom.xml:
>>
>> but i receive **ERROR** Exception encountered: (type
>> "set VERBOSE false" to disable stack traces)
>> java.lang.ClassNotFoundException:
>> org.eclipse.jdt.core.dom.CompilationUnit from [Module
>> "br.ufrgs.rmpestano.intrabundle:0.1-SNAPSHOT-35a537a5-1ab6-4b19-a253-03e3bbfae57d"
>> from local module loader @1eac903 (roots:
>> /home/rmpestano/projetos/forge/dist/forge-distribution-1.4.3.Final/modules,/home/rmpestano/.forge/plugins,/home/rmpestano/projetos)]
>>
>> if i add(manually) org.eclipse.javaparser module
>> dependency in my plugin module.xml everything works.
>>
>> How can i tell forge that i need that dependency?
>>
>> Thanks in advance
>>
>> http://forge.jboss.org/docs/plugin_development/reference-libraries.html
>> --
>> <http://www.advancedit.com.br/>Att,
>>
>> Rafael M. Pestano
>>
>> Desenvolvedor Java Cia. de Processamento de Dados do Rio
>> Grande do Sul
>> Graduando em Ciência da Computação UFRGS
>> http://conventionsframework.org
>> <http://conventions.github.io/home/>
>> http://rpestano.wordpress.com/
>> @realpestano
>>
>>
>>
>>
>> --
>> <http://www.advancedit.com.br/>Att,
>>
>> Rafael M. Pestano
>>
>> Desenvolvedor Java Cia. de Processamento de Dados do Rio
>> Grande do Sul
>> Graduando em Ciência da Computação UFRGS
>> http://conventionsframework.org
>> <http://conventions.github.io/home/>
>> http://rpestano.wordpress.com/
>> @realpestano
>>
>>
>> _______________________________________________
>> forge-dev mailing list
>> forge-dev@lists.jboss.org <mailto:forge-dev@lists.jboss.org>
>> https://lists.jboss.org/mailman/listinfo/forge-dev
>
_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org <mailto:forge-dev@lists.jboss.org>
https://lists.jboss.org/mailman/listinfo/forge-dev
>
>
--
<http://www.advancedit.com.br/>Att,
Rafael M. Pestano
Desenvolvedor Java Cia. de Processamento de Dados do Rio Grande do Sul
Graduando em Ciência da Computação UFRGS
http://conventionsframework.org <http://conventions.github.io/home/>
http://rpestano.wordpress.com/
@realpestano
>
>
--
<http://www.advancedit.com.br/>Att,
Rafael M. Pestano
Desenvolvedor Java Cia. de Processamento de Dados do Rio Grande do Sul
Graduando em Ciência da Computação UFRGS
http://conventionsframework.org <http://conventions.github.io/home/>
http://rpestano.wordpress.com/
@realpestano
>
_______________________________________________
forge-dev mailing list
-
att1.html.zip 5.6 KB