Due to the feature freeze, this feature will need to go into Forge 2.0.
On Tue, Feb 11, 2014 at 5:35 PM, George Gastaldi <ggastald(a)redhat.com>wrote:
Sorry, Forge 1 is feature-frozen, unless you want to submit a
pull-request for it.
If you really need AST, I'd recommend you to use Forge 2 instead.
On 11-02-2014 19:46, Rafael Pestano wrote:
great! about jboss modules, any chance to add the feature to override
default plugin module.xml? :P
2014-02-11 19:42 GMT-02:00 George Gastaldi <ggastald(a)redhat.com>:
> The ability to visit the element tree is a nice feature for the
> JavaParser to have. I'll create a JIRA for this new feature.
>
> Thanks
>
> Em 11/02/2014, às 19:40, Rafael Pestano <rmpestano(a)gmail.com> escreveu:
>
> maybe it will work but the code will be more complex than just use a
> visitor for methodInvocations, and that was just an example i'll have other
> times of inspections than just methodInvocations. I'll dig in and try to
> find a way to use AST.
>
> thanks for the reply
>
>
> 2014-02-11 19:34 GMT-02:00 George Gastaldi <ggastald(a)redhat.com>:
>
>> No, I spoke to soon. What I meant is that calling getMethods() the
>> JavaParser will traverse the AST tree internally, in a similar way that
>> your code does.
>>
>> On 11-02-2014 19:31, George Gastaldi wrote:
>>
>> Hey Rafael,
>>
>> I don't see how using AST is different from what I proposed. When you
>> have a JavaSource object, the tree was already traversed and the options
>> are just there.
>>
>>
>> On 11-02-2014 19:27, Rafael Pestano wrote:
>>
>> 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(a)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/ufr...
>>> and here:
>>>
https://github.com/rmpestano/intrabundle/blob/master/src/main/java/br/ufr...
>>>
>>> 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(a)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(a)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(a)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(a)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(a)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/ufr...
>>>>>>>>
>>>>>>>> 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(a)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(a)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.xmlas 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(a)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@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> forge-dev mailing list
>>>>>>>>>> forge-dev(a)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@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> forge-dev mailing list
>>>>>>>> forge-dev(a)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@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> forge-dev mailing list
>>>>>> forge-dev(a)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(a)lists.jboss.org
>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> forge-dev mailing list
>>>> forge-dev(a)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@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/forge-dev
>>>
>>>
>>>
>>> _______________________________________________
>>> forge-dev mailing list
>>> forge-dev(a)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@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/forge-dev
>>
>>
>>
>>
>> _______________________________________________
>> forge-dev mailing list
>> forge-dev(a)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(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/forge-dev
>
>
> _______________________________________________
> forge-dev mailing list
> forge-dev(a)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@lists.jboss.orghttps://lists.jboss.org/mailman/listinfo/forge-dev
_______________________________________________
forge-dev mailing list
forge-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev