Problems accessing MavenCoreFacet in a utils class (external project)
thorman May 12, 2013 10:30 AMHello,
Question:
Does anyone know why the code works fine when everything is in one project and not when I have the code in a project which the plugin project depends on ?
Context:
I have made some plugins, which works great when I place all code in one project, but fails when I moved some code to a utils project (when that code uses the MavenCoreFacet .class)
I refactored my plugins proejct into several projects (one for each plugin and one for util classes used by all).
I now get a problem when calling a util class function from a plugin, when the util class uses the MavenCoreFacet class, otherwise everything works great.
Tried this:
I have tried to add the following dependency to both the plugin project and the utils project, but I get the same error:
<dependency>
<groupId>org.jboss.forge</groupId>
<artifactId>forge-maven-api</artifactId>
<scope>provided</scope>
</dependency>
Error logs
I get the following errors, the first one when running the command and the second one when I run the same command but with "set VERBOSE true".
***ERROR*** Exception encountered: org.jboss.forge.maven.MavenCoreFacet from [Module "se.miman.forge.plugin.camel.camel-
forge-plugin-impl.dependencies:1.0.0-SNAPSHOT-d82baf7e-096d-4185-a068-4e6d2a9a4876" from local module loader @94265ae (r
oots: C:\Dev\tools\jboss\forge-distribution-1.2.3.Final\modules,C:\Users\Mikael\.forge\plugins,D:\code\test)] (type "set
VERBOSE true" to enable stack traces)
Verbose
java.lang.NoClassDefFoundError: org/jboss/forge/maven/MavenCoreFacet
at se.miman.forge.plugin.util.NazgulPrjUtil.getParentProjectId(NazgulPrjUtil.java:43)
at se.miman.forge.plugin.camel.facet.CamelWebPrjFacet.configureProject(CamelWebPrjFacet.java:109)
at se.miman.forge.plugin.camel.facet.CamelWebPrjFacet.install(CamelWebPrjFacet.java:73)
at org.jboss.forge.project.BaseProject.performInstallation(BaseProject.java:240)
at org.jboss.forge.project.BaseProject.installFacet(BaseProject.java:166)
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:601)
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.weld.proxies.Project$-1946286523$Proxy$_$$_WeldClientProxy.installFacet(Project$-1946286523$Proxy$_
$$_WeldClientProxy.java)
at org.jboss.forge.shell.project.FacetInstallationHandler.performInstallation(FacetInstallationHandler.java:105)
at org.jboss.forge.shell.project.FacetInstallationHandler.install(FacetInstallationHandler.java:81)
at org.jboss.forge.shell.project.FacetInstallationHandler.installRequest(FacetInstallationHandler.java:59)
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:601)
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:628)
at org.jboss.weld.event.EventImpl.fire(EventImpl.java:75)
at se.miman.forge.plugin.camel.CamelWebPlugin.setup(CamelWebPlugin.java:54)
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:601)
at org.jboss.forge.shell.command.Execution.perform(Execution.java:141)
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.command.fshparser.FSHRuntime.shell(FSHRuntime.java:117)
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:601)
at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(ReflectiveAccessorOptimizer.java:1104)
at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(ReflectiveAccessorOptimizer.java:987)
at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(ReflectiveAccessorOptimizer.java:3
44)
at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor(ReflectiveAccessorOptimizer.java:
143)
at org.mvel2.optimizers.dynamic.DynamicOptimizer.optimizeAccessor(DynamicOptimizer.java:67)
at org.mvel2.ast.ASTNode.optimize(ASTNode.java:159)
at org.mvel2.ast.ASTNode.getReducedValueAccelerated(ASTNode.java:115)
at org.mvel2.MVELRuntime.execute(MVELRuntime.java:85)
at org.mvel2.compiler.CompiledExpression.getDirectValue(CompiledExpression.java:123)
at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:119)
at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:113)
at org.mvel2.ast.Function.call(Function.java:157)
at org.mvel2.PropertyAccessor.getMethod(PropertyAccessor.java:885)
at org.mvel2.PropertyAccessor.getNormal(PropertyAccessor.java:181)
at org.mvel2.PropertyAccessor.get(PropertyAccessor.java:147)
at org.mvel2.PropertyAccessor.get(PropertyAccessor.java:127)
at org.mvel2.ast.ASTNode.getReducedValue(ASTNode.java:187)
at org.mvel2.MVELInterpretedRuntime.parseAndExecuteInterpreted(MVELInterpretedRuntime.java:106)
at org.mvel2.MVELInterpretedRuntime.parse(MVELInterpretedRuntime.java:49)
at org.mvel2.MVEL.eval(MVEL.java:185)
at org.jboss.forge.shell.command.fshparser.Parse.executeScript(Parse.java:138)
at org.jboss.forge.shell.command.fshparser.AutoReducingQueue.reduce(AutoReducingQueue.java:84)
at org.jboss.forge.shell.command.fshparser.AutoReducingQueue.peek(AutoReducingQueue.java:75)
at org.jboss.forge.shell.command.fshparser.AutoReducingQueue$1.next(AutoReducingQueue.java:171)
at org.jboss.forge.shell.command.fshparser.AutoReducingQueue$1.next(AutoReducingQueue.java:159)
at org.jboss.forge.shell.command.fshparser.FSHRuntime.run(FSHRuntime.java:78)
at org.jboss.forge.shell.command.fshparser.FSHRuntime.run(FSHRuntime.java:47)
at org.jboss.forge.shell.ShellImpl$ExecutorThread.run(ShellImpl.java:789)
at org.jboss.forge.shell.ShellImpl.execute(ShellImpl.java:812)
at org.jboss.forge.shell.ShellImpl.execute(ShellImpl.java:931)
at org.jboss.forge.shell.ShellImpl$Proxy$_$$_WeldClientProxy.execute(ShellImpl$Proxy$_$$_WeldClientProxy.java)
at org.jboss.forge.shell.plugins.builtin.RunPlugin.run(RunPlugin.java:46)
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:601)
at org.jboss.forge.shell.command.Execution.perform(Execution.java:141)
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:789)
at org.jboss.forge.shell.ShellImpl.execute(ShellImpl.java:812)
at org.jboss.forge.shell.ShellImpl.doShell(ShellImpl.java:602)
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:601)
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:601)
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:172)
at java.lang.Thread.run(Thread.java:722)