[
https://issues.jboss.org/browse/FORGE-889?page=com.atlassian.jira.plugin....
]
Yann Albou commented on FORGE-889:
----------------------------------
Hi,
This issue become a blocker because since Forge 1.3.x a project that contains a file
"package-info.java" cannot be load by forge:
{code}
JBoss Forge, version [ 1.3.2.Final ] - JBoss, by Red Hat, Inc. [
http://forge.jboss.org ]
Error during Startup event
org.jboss.forge.parser.ParserException: Could not find type declaration in Java source -
is this actually code?
at org.jboss.forge.parser.spi.JavaParserImpl.parse(JavaParserImpl.java:115)
at org.jboss.forge.parser.spi.JavaParserImpl.parse(JavaParserImpl.java:85)
at org.jboss.forge.parser.spi.JavaParserImpl.parse(JavaParserImpl.java:70)
at org.jboss.forge.parser.spi.JavaParserImpl.parse(JavaParserImpl.java:56)
at org.jboss.forge.parser.JavaParser.parse(JavaParser.java:54)
at
org.jboss.forge.resources.java.JavaResource.getJavaSource(JavaResource.java:143)
at
org.jboss.forge.spec.javaee.rest.RestApplicationFacetImpl$1.visit(RestApplicationFacetImpl.java:121)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet$1.accept(MavenJavaSourceFacet.java:308)
at
org.jboss.forge.resources.AbstractResource.listResources(AbstractResource.java:123)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet.visitSources(MavenJavaSourceFacet.java:297)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet.access$000(MavenJavaSourceFacet.java:45)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet$1.accept(MavenJavaSourceFacet.java:304)
at
org.jboss.forge.resources.AbstractResource.listResources(AbstractResource.java:123)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet.visitSources(MavenJavaSourceFacet.java:297)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet.access$000(MavenJavaSourceFacet.java:45)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet$1.accept(MavenJavaSourceFacet.java:304)
at
org.jboss.forge.resources.AbstractResource.listResources(AbstractResource.java:123)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet.visitSources(MavenJavaSourceFacet.java:297)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet.access$000(MavenJavaSourceFacet.java:45)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet$1.accept(MavenJavaSourceFacet.java:304)
at
org.jboss.forge.resources.AbstractResource.listResources(AbstractResource.java:123)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet.visitSources(MavenJavaSourceFacet.java:297)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet.access$000(MavenJavaSourceFacet.java:45)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet$1.accept(MavenJavaSourceFacet.java:304)
at
org.jboss.forge.resources.AbstractResource.listResources(AbstractResource.java:123)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet.visitSources(MavenJavaSourceFacet.java:297)
at
org.jboss.forge.maven.facets.MavenJavaSourceFacet.visitJavaSources(MavenJavaSourceFacet.java:283)
at
org.jboss.forge.spec.javaee.rest.RestApplicationFacetImpl.findApplicationClass(RestApplicationFacetImpl.java:110)
at
org.jboss.forge.spec.javaee.rest.RestApplicationFacetImpl.isInstalled(RestApplicationFacetImpl.java:81)
at org.jboss.forge.project.BaseProject.registerFacet(BaseProject.java:153)
at
org.jboss.forge.project.services.ProjectFactory.registerSingleFacet(ProjectFactory.java:208)
at
org.jboss.forge.project.services.ProjectFactory.registerSingleFacet(ProjectFactory.java:186)
at
org.jboss.forge.project.services.ProjectFactory.registerFacets(ProjectFactory.java:178)
at
org.jboss.forge.project.services.ProjectFactory.findProjectRecursively(ProjectFactory.java:117)
at
org.jboss.forge.shell.project.ProjectInitializer.doInit(ProjectInitializer.java:64)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
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
org.jboss.forge.shell.project.CurrentProject.setCurrentResource(CurrentProject.java:79)
at org.jboss.forge.shell.ShellImpl.init(ShellImpl.java:376)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
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.init(ShellImpl$Proxy$_$$_WeldClientProxy.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
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:167)
at java.lang.Thread.run(Thread.java:662)
{code}
So I tried to work on this issue and I did a pull request
(
https://github.com/forge/java-parser/pull/1).
But, eventhough it works with this patch, it was more difficult than I expected.
I had to duplicate some part of code (see class AbstractJavaPackageSource) otherwise a big
refactoring would be necessary.
What do you think ?
Cannot parse package-info.java
------------------------------
Key: FORGE-889
URL:
https://issues.jboss.org/browse/FORGE-889
Project: Forge
Issue Type: Bug
Components: Parsers / File Manipulation
Affects Versions: 1.2.3.Final, 2.0.0.Alpha3
Reporter: Yann Albou
Fix For: 1.x Future
The parsing of package-info.java file (see
http://docs.oracle.com/javase/6/docs/technotes/tools/solaris/javadoc.html...)
raises the following exeption:
"org.jboss.forge.parser.ParserException: Could not find type declaration in Java
source - is this actually code?"
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira