0 Replies Latest reply on Feb 10, 2014 11:58 AM by George Gastaldi

    Re: [forge-dev] Add module dependency

    George Gastaldi Master

      Try adding|<dependencies-as-resource-root/> to your forge.xml file as

      described in:

      | http://forge.jboss.org/docs/plugin_development/reference-libraries.html

       

      On 10-02-2014 14:55, Rafael Pestano wrote:

      there isnt an easy way to add     <module name="org.eclipse.javaparser" />

      to my plugin module.xml at build time?

       

      >

      2014-02-10 14:52 GMT-02:00 Rafael Pestano <rmpestano@gmail.com

      <mailto:rmpestano@gmail.com>>:

       

          Hi George,

       

          that was my first attempt, i got classnotfound, see stacktrace:

       

      >

          **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-3734196a-d501-400f-b6ec-bfcd0ce08b99"

          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)]

                  at

          org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:190)

                  at

          org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:468)

                  at

          org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:456)

                  at

          org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:398)

                  at

          org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:120)

       

      >

                  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:48 GMT-02:00 George Gastaldi <ggastald@redhat.com

          <mailto:ggastald@redhat.com>>:

       

              Rafael,

       

              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

      >>         here:https://github.com/rmpestano/intrabundle/blob/master/src/main/java/br/ufrgs/rmpestano/intrabundle/model/OSGiModuleImpl.java#L351

      >>

      >>         I've also tried jdt from this dependency:

      >>                  **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

      >>                              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

      >>         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

      forge-dev@lists.jboss.org

      https://lists.jboss.org/mailman/listinfo/forge-dev