[forge-dev] Add module dependency
Rafael Pestano
rmpestano at gmail.com
Tue Feb 11 16:27:23 EST 2014
Hi George,
i dont think iterate over all methods is an option, im going to inspect
very large applications(100K + lines of code) so id like to insist with AST.
2014-02-11 17:33 GMT-02:00 George Gastaldi <ggastald at redhat.com>:
> Hi Rafael,
>
> You don't need AST for your code. You can use the forge-parser API for
> that.
>
> Cast your JavaSource to JavaClass and you can call javaClass.getMethods()
> to fetch the methods the JavaClass declares. Then iterate through them and
> you'll have your information.
>
>
> On 11-02-2014 13:50, Rafael Pestano wrote:
>
> Hi Ivan,
>
> i need to visit AST, such as here:
> https://github.com/rmpestano/intrabundle/blob/master/src/main/java/br/ufrgs/rmpestano/intrabundle/jdt/StaleReferencesVisitor.java
> and here:
> https://github.com/rmpestano/intrabundle/blob/master/src/main/java/br/ufrgs/rmpestano/intrabundle/model/OSGiModuleImpl.java#L373
>
> that can be done with forge parser?
>
> I have no issues with the tests.
>
> One thing that would solve the problem would be to provide module.xml
> inside the plugin which would override default module.xml , something like
> is done with jboss-deployment-structure in Java EE apps, is that possible?
>
>
>
>
> 2014-02-10 16:46 GMT-02:00 Ivan St. Ivanov <ivan.st.ivanov at gmail.com>:
>
>> Hi Rafael,
>>
>> Most probably the reason for the class cast exception is that you have
>> declared compile dependency to both the Forge parser and the jdt-core
>> module. The parser module has itself dependency to jdt core. Both modules
>> are loaded in separate classloaders. So maybe Forge loads the CompilationUnit
>> class in different classloader than yours.
>>
>> So I would expect that the provided scope should work, not sure why it
>> failed.
>>
>> I would suggest following what George asked earlier in this thread: *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*
>>
>> Besides the classloading issues, the Forge parser API is much more
>> intuitive to use than JDT core. The downside is that not all of the JDT
>> core is wrapped. But I hope that it has everything you need.
>>
>> Cheers,
>> Ivan
>>
>>
>> On Mon, Feb 10, 2014 at 7:07 PM, Rafael Pestano <rmpestano at gmail.com>wrote:
>>
>>> same exceptions, with compile got classcast and with provided classnot
>>> found
>>>
>>>
>>> 2014-02-10 14:58 GMT-02:00 George Gastaldi <ggastald at redhat.com>:
>>>
>>> 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 at 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 at 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:
>>>>>> <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 at 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 at 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:
>>>>>>>>
>>>>>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>>>>>> <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
>>>>>>>> http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="
>>>>>>>> http://maven.apache.org/POM/4.0.0"
>>>>>>>> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
>>>>>>>> <modelVersion>4.0.0</modelVersion>
>>>>>>>> <groupId>br.ufrgs.rmpestano</groupId>
>>>>>>>> <artifactId>intrabundle</artifactId>
>>>>>>>> <version>0.1-SNAPSHOT</version>
>>>>>>>> <name>intrabundle</name>
>>>>>>>> <properties>
>>>>>>>> <forge.version>1.4.4.Final</forge.version>
>>>>>>>>
>>>>>>>> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
>>>>>>>> <forge.api.version>1.4.4.Final</forge.api.version>
>>>>>>>> </properties>
>>>>>>>> <dependencies>
>>>>>>>> <dependency>
>>>>>>>> <groupId>org.jboss.forge</groupId>
>>>>>>>> <artifactId>forge-shell-api</artifactId>
>>>>>>>> <version>${forge.version}</version>
>>>>>>>> <scope>provided</scope>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>org.jboss.forge</groupId>
>>>>>>>> <artifactId>forge-maven-api</artifactId>
>>>>>>>> <version>${forge.version}</version>
>>>>>>>> <scope>provided</scope>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>org.jboss.forge</groupId>
>>>>>>>> <artifactId>forge-javaee-api</artifactId>
>>>>>>>> <version>${forge.version}</version>
>>>>>>>> <scope>provided</scope>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>net.sf.jasperreports</groupId>
>>>>>>>> <artifactId>jasperreports</artifactId>
>>>>>>>> <version>5.1.2</version>
>>>>>>>> <exclusions>
>>>>>>>> <exclusion>
>>>>>>>> <artifactId>itext</artifactId>
>>>>>>>> <groupId>com.lowagie</groupId>
>>>>>>>> </exclusion>
>>>>>>>> <exclusion>
>>>>>>>> <artifactId>commons-collections</artifactId>
>>>>>>>> <groupId>commons-collections</groupId>
>>>>>>>> </exclusion>
>>>>>>>> <exclusion>
>>>>>>>> <artifactId>jdtcore</artifactId>
>>>>>>>> <groupId>eclipse</groupId>
>>>>>>>> </exclusion>
>>>>>>>> </exclusions>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>commons-collections</groupId>
>>>>>>>> <artifactId>commons-collections</artifactId>
>>>>>>>> <version>3.2.1</version>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>com.lowagie</groupId>
>>>>>>>> <artifactId>itext</artifactId>
>>>>>>>> <version>2.1.7</version>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>org.eclipse.tycho</groupId>
>>>>>>>> <artifactId>org.eclipse.jdt.core</artifactId>
>>>>>>>> <version>3.9.1.v20130905-0837</version>
>>>>>>>> <scope>provided</scope>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>org.jboss.forge</groupId>
>>>>>>>> <artifactId>forge-parser-java</artifactId>
>>>>>>>> <version>${forge.version}</version>
>>>>>>>> <scope>provided</scope>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>org.jboss.forge</groupId>
>>>>>>>> <artifactId>forge-test-harness</artifactId>
>>>>>>>> <version>${forge.version}</version>
>>>>>>>> <scope>test</scope>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>org.jboss.forge</groupId>
>>>>>>>> <artifactId>forge-shell</artifactId>
>>>>>>>> <version>${forge.version}</version>
>>>>>>>> <scope>test</scope>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>org.jboss.forge</groupId>
>>>>>>>> <artifactId>forge-javaee-impl</artifactId>
>>>>>>>> <version>${forge.version}</version>
>>>>>>>> <scope>test</scope>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>org.jboss.forge</groupId>
>>>>>>>> <artifactId>forge-parser-java-api</artifactId>
>>>>>>>> <version>1.4.4-SNAPSHOT</version>
>>>>>>>> <scope>provided</scope>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>org.jboss.forge</groupId>
>>>>>>>> <artifactId>forge-parser-java</artifactId>
>>>>>>>> <version>1.4.4-SNAPSHOT</version>
>>>>>>>> <scope>provided</scope>
>>>>>>>> </dependency>
>>>>>>>> </dependencies>
>>>>>>>> <repositories>
>>>>>>>> <repository>
>>>>>>>> <id>JBOSS_NEXUS</id>
>>>>>>>> <url>http://repository.jboss.org/nexus/content/groups/public
>>>>>>>> </url>
>>>>>>>> </repository>
>>>>>>>> </repositories>
>>>>>>>> <build>
>>>>>>>> <plugins>
>>>>>>>> <plugin>
>>>>>>>> <artifactId>maven-compiler-plugin</artifactId>
>>>>>>>> <version>2.3.2</version>
>>>>>>>> <configuration>
>>>>>>>> <encoding>UTF-8</encoding>
>>>>>>>> <source>1.6</source>
>>>>>>>> <target>1.6</target>
>>>>>>>> </configuration>
>>>>>>>> </plugin>
>>>>>>>> <plugin>
>>>>>>>> <groupId>org.codehaus.mojo</groupId>
>>>>>>>> <artifactId>jasperreports-maven-plugin</artifactId>
>>>>>>>> <version>1.0-beta-1</version>
>>>>>>>> <executions>
>>>>>>>> <execution>
>>>>>>>> <phase>prepare-package</phase>
>>>>>>>> <goals>
>>>>>>>> <goal>compile-reports</goal>
>>>>>>>> </goals>
>>>>>>>> </execution>
>>>>>>>> </executions>
>>>>>>>> <dependencies>
>>>>>>>> <dependency>
>>>>>>>> <groupId>net.sf.jasperreports</groupId>
>>>>>>>> <artifactId>jasperreports</artifactId>
>>>>>>>> <version>5.1.2</version>
>>>>>>>> <scope>compile</scope>
>>>>>>>> <exclusions>
>>>>>>>> <exclusion>
>>>>>>>> <artifactId>itext</artifactId>
>>>>>>>> <groupId>com.lowagie</groupId>
>>>>>>>> </exclusion>
>>>>>>>> </exclusions>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>commons-digester</groupId>
>>>>>>>> <artifactId>commons-digester</artifactId>
>>>>>>>> <version>1.8</version>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>commons-collections</groupId>
>>>>>>>> <artifactId>commons-collections</artifactId>
>>>>>>>> <version>3.2</version>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>com.lowagie</groupId>
>>>>>>>> <artifactId>itext</artifactId>
>>>>>>>> <version>2.1.7</version>
>>>>>>>> </dependency>
>>>>>>>> <dependency>
>>>>>>>> <groupId>commons-beanutils</groupId>
>>>>>>>> <artifactId>commons-beanutils</artifactId>
>>>>>>>> <version>1.5</version>
>>>>>>>> </dependency>
>>>>>>>> </dependencies>
>>>>>>>> <configuration>
>>>>>>>> <xmlValidation>true</xmlValidation>
>>>>>>>>
>>>>>>>> <sourceDirectory>src/main/resources/reports</sourceDirectory>
>>>>>>>> <outputDirectory>target/classes/reports</outputDirectory>
>>>>>>>> </configuration>
>>>>>>>> </plugin>
>>>>>>>> </plugins>
>>>>>>>> </build>
>>>>>>>> </project>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> 2014-02-10 10:53 GMT-02:00 Rafael Pestano <rmpestano at gmail.com>:
>>>>>>>>
>>>>>>>>> Hi guys,
>>>>>>>>>
>>>>>>>>> how can i add a module dependency to my plugin?(in forge 1.x)
>>>>>>>>>
>>>>>>>>> I'm using JavaParser and i need to access
>>>>>>>>> org.eclipse.jdt.core.dom.CompilationUnit api which is available in
>>>>>>>>> javaparser module (org.eclipse.jdt.core-3.9.1.jar) which doesnt comes in
>>>>>>>>> default module dependencies[1].
>>>>>>>>>
>>>>>>>>> in my pom.xml i use <dependency>
>>>>>>>>> <groupId>org.eclipse.tycho</groupId>
>>>>>>>>> <artifactId>org.eclipse.jdt.core</artifactId>
>>>>>>>>> <version>3.9.1.v20130905-0837</version>
>>>>>>>>> <scope>provided</scope> tried compile also
>>>>>>>>> </dependency>
>>>>>>>>>
>>>>>>>>> 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
>>>>>>>>>
>>>>>>>>> [1]
>>>>>>>>> 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 listforge-dev at lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> forge-dev mailing list
>>>>>>>> forge-dev at 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 listforge-dev at lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> forge-dev mailing list
>>>>>> forge-dev at 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 listforge-dev at lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/forge-dev
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> forge-dev mailing list
>>>> forge-dev at 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
>>>
>>> _______________________________________________
>>> forge-dev mailing list
>>> forge-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/forge-dev
>>>
>>
>>
>> _______________________________________________
>> forge-dev mailing list
>> forge-dev at 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
>
>
> _______________________________________________
> forge-dev mailing listforge-dev at lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/forge-dev
>
>
>
> _______________________________________________
> forge-dev mailing list
> forge-dev at 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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/forge-dev/attachments/20140211/d2fa5173/attachment-0001.html
More information about the forge-dev
mailing list