JBoss tools does not put impl classes on classpath for AS7
henk53 Oct 21, 2011 6:39 PMUsing JBoss Tools 3.2m4 (isn't released, but somehow came with server runtime discovery in Eclipse 3.7sr1) and JBoss AS 7.02, it seems the implementation classes are not put on the classpath anymore.
Depending on the role of the developer, this is both a blessing and a curse.
It's a blessing, since 'ordinary' application developers can now not mistakingly depend on implementation classes.
It's a curse, since more experienced developers typically fix problems by stepping into the framework to see where exactly something goes wrong (one of the MAJOR benefits of open source software).
Without those classes present on the classpath, it will be very troublesome to get the right versions and then to attach the right source-code. This problem is like the source code that was missing in the JBoss AS 6 source download, but worse. Now not only the source code is missing, but the implementation is missing as well (in the IDE).
As a small example, suppose I expect there's a problem in say class ActionListenerImpl (because I see this at a crucial point in my stacktrace). I try to open this class using ctrl-shift-t.
With the JBoss AS 6 runtime, it shows that this class is in jsf-impl-2.0.3-b05.jar. When I open the class there's no source-attachment, but I have a lead that I can use to hunt the Internet for the source attachment.
With the JBoss AS 7 runtime, nothing...
Just nothing...
Nothing shows up...
So now I have to unpack all jars from the binary distribution of JBoss AS, do grepping on the filesystem, when I find the jar, copy it to my project, exclude it from source control, add it to the classpath, and -then- I can start hunting the Internet for the source attachment.
Basically, with every version of JBoss AS, it seems to get more difficult to easily step through the source code that makes up JBoss AS. Am I perhaps one of the very few developers who actually likes to step into the framework's source-code instead of treating it as a black-box?
Would it be possible to have an option somewhere so the runtime actually puts the implementation classes on the IDE's classpath?