The Java Virtual Machine specification limits the size of generated Java byte
code for each method in a class to the maximum of 64K bytes. This limitation
will cause the JVM to throw java.lang.VerifyError at runtime when the method
size exceeds this limit.
This method size restriction of the JVM seems to be too stringent. A bug is
open with the Oracle Java development team
(http://bugs.sun.com/view_bug.do?bug_id=4262078). This bug is taken as an
enhancement request which is likely to be fixed in the future java versions.
That said, the fix for this issue is rather supportive. Application/Container
developers need to consider few factors and apply good
programming/refactoring techniques to get around this problem. While future
versions of JVM might increase the method size limit to a considerable
extent, a the size will always be a finite value.
In this article, I ... (more)
Java is hot. Just nine years old, it has become one of the leading
development environments in the world. Millions of programmers and thousands
of companies use it, and half of all IT managers expect to deploy J2EE
applications this year.
But Java's popularity hasn't necessarily made it easy for the growing
population of Java code jockeys. Ever-shortening production cycles have kept
the heat on programmers, who increasingly work in large teams to meet
production milestones. And every day those teams come face-to-face with an
immutable law of software development: the more code y... (more)
Java development is at a crossroads. The open standards have done lot of good
for the Java platform and language, but they have brought in some problems
too. Developers are often drenched in the complexities that surround Java
development. Worse yet, these complexities are so overwhelming that the
actual business problems take a back seat.
The J2EE specification provides a lot of APIs, standards, and open ends that
allow architects, designers, and developers to build superior enterprise
systems. Care must be taken to engage in the balancing act of choosing the
Software maintenance is a tedious and challenging job. As long as the
software functions as expected, it looks great. Imagine the situation, your
pager keeps buzzing in the midnight (Not a happy feeling, right?).
Any software system, no matter how well it has been built and quality tested
might get into run-time performance issues. The reasons can be within the
functional boundary or can be from the external environment. Software systems
are built on certain assumptions and pre-conceived notions. However, when
they go live, the assumptions may turn out to be false causing the syst... (more)